1 添加redis支持
在pom.xml中添加
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-redis</artifactId></dependency>
2 redis配置
@Configuration @EnableCaching public class RedisCacheConfig { @Bean public CacheManager cacheManager( @SuppressWarnings("rawtypes") RedisTemplate redisTemplate) { return new RedisCacheManager(redisTemplate); } @Bean public RedisTemplate<String, String> redisTemplate( RedisConnectionFactory factory) { final StringRedisTemplate template = new StringRedisTemplate(factory); template.setValueSerializer(new Jackson2JsonRedisSerializer<SysUser>( SysUser.class)); //请注意这里 return template; } }
3 redis服务器配置
# REDIS (RedisProperties) spring.redis.database= # database name spring.redis.host=localhost # server host spring.redis.password= # server password spring.redis.port=6379 # connection port spring.redis.pool.max-idle=8 # pool settings ... spring.redis.pool.min-idle=0 spring.redis.pool.max-active=8 spring.redis.pool.max-wait=-1 spring.redis.sentinel.master= # name of Redis server spring.redis.sentinel.nodes= # comma-separated list of host:port pairs
4 应用
/** *此处的dao操作使用的是spring data jpa,使用@Cacheable可以在任意方法上,*比如@Service或者@Controller的方法上 */ public interface SysUserRepo1 extends CustomRepository<SysUser, Long> { @Cacheable(value = "usercache") public SysUser findByUsername(String username); }
5 检验
@Controller public class TestController { @Autowired SysUserRepo1 sysUserRepo1; @RequestMapping("/test") public @ResponseBody String test(){ final SysUser loaded = sysUserRepo1.findByUsername("wyf"); final SysUser cached = sysUserRepo1.findByUsername("wyf"); return "ok"; } }
效果如图:
已有 0人发表留言,猛击->> 这里<<-参与讨论
ITeye推荐