【Springboot整合redis的配置类+依赖+pom文件+基本注解】的基本使用
redis+Springboot之整合::配置类+注解+pom;
·
新增redis配置类
package com.example.config;
import org.springframework.cache.CacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.cache.RedisCacheConfiguration;
import org.springframework.data.redis.cache.RedisCacheManager;
import org.springframework.data.redis.cache.RedisCacheWriter;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.data.redis.serializer.RedisSerializationContext;
import org.springframework.data.redis.serializer.RedisSerializer;
import java.time.Duration;
/**
* @author 无敌暴龙神
*/
@Configuration
public class RedisConfig {
/**
* 设置序列化等缓存配置
*
* @return
*/
@Bean
public RedisCacheConfiguration redisCacheConfiguration() {
RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig();
// 设置序列化的方式
redisCacheConfiguration = redisCacheConfiguration.serializeValuesWith(RedisSerializationContext
.SerializationPair
.fromSerializer(RedisSerializer.json()));
return redisCacheConfiguration;
}
}
依赖:除去Springboot选择依赖项的nosql中选择redis外;需要额外增加的依赖::jedis的连接池依赖
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
<version>2.9.0</version>
</dependency>
pom文件需要添加有关jedis的配置项
server:
port: 8080
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/redis_study?useSSL=false&serverTimezone=GMT%2B8
username: root
password: root
#redis的配置
redis:
#redis的ip地址
host: 127.0.0.1
#redis的端口号
port: 6380
#redis的数据库;默认为0库
database: 0
lettuce:
#连接池参数配置
pool:
min-idle: 3
max-idle: 8
max-active: 8
#配置mybatis
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #输出sql
mapper-locations:
- classpath:mapper/*Mapper.xml
用得到的注解:
@EnableCaching 在启动类上加上注解启动缓存
#作用在你要缓存的数据方法上
@Cacheable(key = "") ---[当key为字符串时候,在双引号内使用''来标志该字符串为key;;;当使用方法的形参作为key的时候,使用#属性名来表示该形参为key]-----添加缓存
@Cacheput 解决脏读 每次都会执行一次数据库查询,然后把查到的值存入缓存中 一般用于更新
@CachEvict(解决脏读)
#作用在类上用于配置(全局的配置缓存)
@CacheConfig(cacheNames = "全局key")
更多推荐
已为社区贡献4条内容
所有评论(0)