SpringBoot+MyBatis+Redis整合(记录)

本文详细介绍了如何将SpringBoot项目与MyBatis和Redis进行整合。首先,通过创建SpringBoot项目,配置application.properties,设置相关目录及文件实现MyBatis的整合。接着,介绍了MyBatis的各个组件如Mapper、Service、Controller的代码实现。然后,讲解了安装和部署Redis的过程,并在SpringBoot中配置Redis缓存,包括添加依赖、配置文件以及使用@EnableCaching和@Cacheable等注解实现缓存功能。最后,提到了如何通过@CacheEvict注解实现数据更新时的缓存清除,以确保数据实时性。
摘要由CSDN通过智能技术生成

整合分为两步:1、整合MyBatis;2、整合Redis。

(数据库用MySql,自行百度安装。)

一、整合MyBatis。

1、创建SpringBoot项目。

2、在resources下的application.properties配置里添加如下代码:

server.port=8090
## 数据库设置
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/db_bgy?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root123

## mybatis配置
# 参数类型的包别名设置
mybatis.typeAliasesPackage=com.example.entity
# 指向映射xml文件目录
mybatis.mapperLocations=classpath:mapper/*.xml

3、创建相应的项目目录以及文件,如下图所示:

以上各个文件的代码如下:

(1)UserController代码如下:

@RestController
@RequestMapping("/user")
public class UserController {

    private final UserService userService;

    public UserController(UserService userService) {
        this.userService = userService;
    }

    @RequestMapping(value = "/find_user", method = RequestMethod.POST)
    public Map<String, Object> GetUser(@RequestParam(value = "id", defaultValue = "0") int id){
        User user = userService.findUserById(id);
        if (user != null) {
            return HttpUtils.getResponse(1, user, "请求成功");
        }
        return HttpUtils.getResponse(0, null, "请求失败");
    }
}

附加:如何传入Json对象参数?

1.请求参数格式必须是正确的JSON。

2.在入参中使用注解@RequestBody,用于接收JSON参数,使其自动转对象

3.标识请求参数的格式为JSON--->> @PostMapping(value="/Test",produces = "application/json;charset=UTF-8")

Spring Boot整合MyBatis-Plus和Redis可以通过以下步骤实现: 1. 添加依赖:在pom.xml文件中添加Spring BootMyBatis-Plus和Redis的依赖。 ```xml <!-- Spring Boot --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- MyBatis-Plus --> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>${mybatis-plus.version}</version> </dependency> <!-- Redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> ``` 2. 配置数据源:在application.properties或application.yml中配置数据库连接信息。 ```properties spring.datasource.url=jdbc:mysql://localhost:3306/mydatabase spring.datasource.username=root spring.datasource.password=123456 ``` 3. 配置MyBatis-Plus:创建一个配置类,使用@MapperScan注解指定Mapper接口的扫描路径。 ```java @Configuration @MapperScan("com.example.mapper") public class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { return new PaginationInterceptor(); } } ``` 4. 创建实体类和Mapper接口:创建实体类和对应的Mapper接口,使用注解进行映射。 ```java @Data @TableName("user") public class User { @TableId(type = IdType.AUTO) private Long id; private String name; } ``` ```java @Mapper public interface UserMapper extends BaseMapper<User> { } ``` 5. 添加Redis配置:在application.properties或application.yml中配置Redis连接信息。 ```properties spring.redis.host=localhost spring.redis.port=6379 ``` 6. 编写业务逻辑:创建Service类,注入Mapper和RedisTemplate,并编写业务逻辑。 ```java @Service public class UserServiceImpl implements UserService { @Autowired private UserMapper userMapper; @Autowired private RedisTemplate<String, Object> redisTemplate; @Override public User getUserById(Long id) { // 先从缓存中获取数据 String key = "user:" + id; User user = (User) redisTemplate.opsForValue().get(key); // 如果缓存中不存在,则从数据库中获取数据 if (user == null) { user = userMapper.selectById(id); // 将数据存入缓存 redisTemplate.opsForValue().set(key, user); } return user; } } ``` 这样,你就成功地将Spring BootMyBatis-Plus和Redis进行了整合。通过MyBatis-Plus进行数据库操作,并通过Redis进行缓存,提高系统性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值