搭建spring boot项目,使用mysql,redis,mongoDB数据库

一.首先创建一个项目 newProject,选择spring boot插件,由于本人是社区版idea,需要下载spring Assistant插件,next下一步

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第1张图片

二.设置版本号打包方式等等,然后下一步,

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第2张图片

三.选择需要的依赖下一步,然后完成。

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第3张图片


四.创建完项目后后修改配置文件

spring:
  datasource:
    #配置Mysql连接信息
    url: jdbc:mysql://localhost:3306/ssh?characterEncoding=utf8
    username: root
    password: 111111
    #mongodb数据配置
  data:
    mongodb:
     host: 127.0.0.1
     port: 27017
     name: test
  jpa:
    #使用数据源
    database: MYSQL
    #是否打印日志
    show-sql: true
  #Hibernate ddl auto (validate|create|create-drop|update)
    hibernate:
      #加载hibernate自动更新数据库结构
      ddl-auto: update
      naming-strategy: org.hibernate.cfg.ImprovedNamingStrategy
    properties:
      hibernate:
        dialect: org.hibernate.dialect.MySQL5Dialect
#配置redis连接信息
redis:
  # database: 1
    host: 192.168.1.214
    port: 6379
    pool:
      # 连接池中的最大空闲连接
      max-idle: 8
      # 连接池中的最小空闲连接
      min-idle: 0
      # 连接池最大连接数(使用负值表示没有限制)
      max-active: 8
      # 连接池最大阻塞等待时间(使用负值表示没有限制)
      max-wait: -1

五.创建项目需要结构目录,创建实体类,业务类,


mysql实体类

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第4张图片

mongodb实体类

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第5张图片

六.定义mysql,mongoDB,redis存取数据接口,简单示例,没有定义业务类

package com.example.demo.com.by.rest;

import com.example.demo.com.by.domain.MongoUser;
import com.example.demo.com.by.domain.User;
import com.example.demo.com.by.repository.RedisServiceImpl;
import com.example.demo.com.by.repository.UserRepostory;

import org.springframework.data.mongodb.repository.MongoRepository;
import org.springframework.web.bind.annotation.*;

import java.util.List;
//控制器注解
@RestController
public class testController {
    private final UserRepostory userRepostory;
    private RedisServiceImpl redisRespostry;
    private final MongoRepository mongoRepository;

    public testController(UserRepostory userRepostory, 
                          RedisServiceImpl redisRespostry, 
                          MongoRepository mongoRepository){
        this.userRepostory = userRepostory;
        this.redisRespostry = redisRespostry;
        this.mongoRepository = mongoRepository;
    }

    /**
     *      获得mysql用户列表
     */
    @RequestMapping("/get-users")
    public List getUsers() {
        List user = userRepostory.findAll();
        return user;
    }

    /**
     *      添加mysql一个用户
     */
    @PostMapping("add-user")
    public User addUser(@RequestParam User u){
        User user = new User();
        user.setId(u.getId());
        user.setName(u.getName());
        user.setAge(u.getAge());
        userRepostory.save(user);
        return user;
    }

    /**
     *          存入redis一个字符串
     */
    @GetMapping("add-redis/{key}/{value}")
    public String addRedis(@PathVariable String key,
                           @PathVariable String value){
        redisRespostry.add(key,value);
        return value;
    }

    /**
     *      取出redis一个字符串
     */
    @GetMapping("get-redis-by-key/{key}")
    public String getKey(@PathVariable String key){
       return redisRespostry.get(key);
    }

    /**
     *      取出mongo所有所有用户
     */
    @GetMapping("get-mongo-users")
    public List getMongoUser() {
        List user = mongoRepository.findAll();
        return user;
    }

    /**
     *     添加MongoDB一个用户
     */
    @GetMapping("add-mongo-user/{id}/{name}/{age}")
    public Integer getMongoUser(@PathVariable String id,
                                @PathVariable String name,
                                @PathVariable String age) {
        MongoUser mongoUser = new MongoUser();
        mongoUser.setId(Integer.parseInt(id));
        mongoUser.setAge(Integer.parseInt(age));
        mongoUser.setName(name);
        mongoRepository.save(mongoUser);
        return 200;
    }
}

七.创建Repository类继承JpaRespoitory,jpa方法定义参考https://blog.csdn.net/z69183787/article/details/30265243

public interface UserRepostory extends JpaRepository,String> {

}

public interface MongoUserRepository extends MongoRepository,String> {
    
}

八.编写redis存取字符串的工具类。

package com.example.demo.com.by.repository;

import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service
@Transactional
public class RedisServiceImpl {
    private final StringRedisTemplate stringRedisTemplate;

    public RedisServiceImpl(StringRedisTemplate stringRedisTemplate) {
        this.stringRedisTemplate = stringRedisTemplate;
    }
    //定义添加数据方法
    public boolean add(String key,String value){
        stringRedisTemplate.opsForValue().set(key,value);
        return true;
    }
    //定义取数据方法
    public String get(String key){
        String value = stringRedisTemplate.opsForValue().get(key);
        return value;
    }

}

好了,现在可以启动服务连接数据库了。

首先使用Mongodb,创建一个id=2 name=lao8 age=30的用户,创建成功

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第6张图片

获取mongoDB用户list

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第7张图片


获取Mysql数据

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第8张图片

存入redis 一个lao8

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第9张图片

获取redis 里key为testUserOne的值

搭建spring boot项目,使用mysql,redis,mongoDB数据库_第10张图片

你可能感兴趣的:(搭建spring boot项目,使用mysql,redis,mongoDB数据库)