Java学习——springboot整合mysql、redis、mongodb

Java学习——springboot整合mysql、redis、mongodb

1. 环境搭建

创建SpringBoot工程时勾选如下技术:
在这里插入图片描述
pom.xml文件内依赖如下:

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-mongodb</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.8</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

		<!--实用的工具包依赖)-->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.7.17</version>
        </dependency>

    </dependencies>

2. 搭建目录结构

在这里插入图片描述

3. 各层内容

  1. dao层
@Mapper
public interface MembersDao extends BaseMapper<Members> {

}
  1. 实体类
@Data
@Document(collation = "members")
public class Members implements Serializable {
    @Id// mongodb主键
    private int id;
    private String studentName;
    @Indexed //mongodb索引
    private String studentId;

    @TableField(exist = false)
    private String identityCard;
    private String tel;
    private String dormitoryAddress;
    @TableLogic//逻辑删除字段,1_删除,0_未删除
    private int deleted;

    //该字段表中未出现,通过设置TableField的exist属性不报错
    @TableField(exist = false)
    private String birthday;

}

注: Serializable实现序列化与反序列化接口

  1. service层
//MybatisPlus帮助实现业务层快速开发
public interface IMembersService extends IService<Members> {
}
@Service
public class MembersImpl extends ServiceImpl<MembersDao, Members> implements IMembersService {

}
  1. 配置文件
server:
  port: 80

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.*.*** :3306/data211
    username: root
    password: root
  redis:
    lettuce:
      pool:
        max-active: 10
        max-idle: 10
        min-idle: 1
        time-between-eviction-runs: 10s
    #redis集群
    cluster:
      nodes:
       - 192.168.*.***:7001
       - 192.168.*.***:7002
       - 192.168.*.***:7003
       - 192.168.*.***:8001
       - 192.168.*.***:8002
       - 192.168.*.***:8003
  data:
    mongodb:
      uri: mongodb://192.168.*.* :27017/data211

mybatis-plus:
  mapper-locations: classpath:mapper/*.xml
#  配置别名
  type-aliases-package: com.data211.pojo
  global-config:
    db-config:
#      主键自增长
      id-type: auto
#      表名前缀
      table-prefix: data211_
#      逻辑删除
      logic-delete-value: 1
      logic-not-delete-value: 0
#      控制台输出操作数据库日志
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl


4. 测试

@SpringBootTest
class Data211ApplicationTests {

    @Resource
    private IMembersService membersService;

    @Resource
    private StringRedisTemplate stringRedisTemplate;

    @Resource
    private MongoTemplate mongoTemplate;

    private String DATA211_MEMBERS = "data211:members:";


    @Test
    void MysqlToMongoDB(){
        Members members = membersService.getById(1);
        Members save = mongoTemplate.save(members);
        System.out.println(save);
    }

    @Test
    void MysqlToRedis(){
        int[] num ={4,21};
        for (int i : num) {
            Members members = membersService.getById(i);
            //hutool工具包提供,将对象序列化为json字符串
            String s = JSONUtil.toJsonStr(members);
            stringRedisTemplate.opsForValue().set(DATA211_MEMBERS + members.getStudentName(),s);
        }
    }
}

查看redis
在这里插入图片描述

存入成功!
查看mongodb
在这里插入图片描述
存入成功!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot整合MyBatis、MongoDBRedis可以分别按照以下步骤进行: 整合MyBatis: 1. 引入MyBatis和MyBatis-SpringBoot-Starter依赖: ```xml <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.2.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version>1.1.22</version> </dependency> ``` 2. 配置数据源: ```properties spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false spring.datasource.username=root spring.datasource.password=123456 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver ``` 3. 配置MyBatis: ```properties mybatis.mapper-locations=classpath:mapper/*.xml mybatis.type-aliases-package=com.example.demo.entity ``` 4. 编写Mapper接口和SQL映射文件。 整合MongoDB: 1. 引入MongoDB和Spring Data MongoDB依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency> ``` 2. 配置MongoDB: ```properties spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 spring.data.mongodb.database=test ``` 3. 编写MongoDB实体类和Repository接口。 整合Redis: 1. 引入Redis和Spring Data Redis依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` 2. 配置Redis: ```properties spring.redis.host=localhost spring.redis.port=6379 spring.redis.password= spring.redis.database=0 ``` 3. 编写Redis操作类。可以使用RedisTemplate或者StringRedisTemplate来操作Redis

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值