1 添加redis支持
在pom.xml中添加
Xml代码

- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-redis</artifactId>
- </dependency>
2 redis配置
Java代码

- @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服务器配置
Properties代码

- # 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 应用
Java代码

- /**
- *此处的dao操作使用的是spring data jpa,使用@Cacheable可以在任意方法上,*比如@Service或者@Controller的方法上
- */
- public interface SysUserRepo1 extends CustomRepository<SysUser, Long> {
- @Cacheable(value = "usercache")
- public SysUser findByUsername(String username);
- }
5 检验
Java代码

- @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";
- }
- }
效果如图:

Spring Boot使用redis做数据缓存
原文:http://www.blogjava.net/paulwong/archive/2015/02/25/423020.html