paulwong

          Spring Boot使用redis做數據緩存

          1 添加redis支持

          在pom.xml中添加

          Xml代碼  收藏代碼
          1. <dependency>  
          2.           <groupId>org.springframework.boot</groupId>  
          3.           <artifactId>spring-boot-starter-redis</artifactId>  
          4.       </dependency>  

           

          2 redis配置

          Java代碼  收藏代碼
          1. @Configuration  
          2. @EnableCaching  
          3. public class RedisCacheConfig {  
          4.     @Bean  
          5.     public CacheManager cacheManager(  
          6.             @SuppressWarnings("rawtypes") RedisTemplate redisTemplate) {  
          7.         return new RedisCacheManager(redisTemplate);  
          8.     }  
          9.   
          10.     @Bean  
          11.     public RedisTemplate<String, String> redisTemplate(  
          12.             RedisConnectionFactory factory) {  
          13.         final StringRedisTemplate template = new StringRedisTemplate(factory);  
          14.         template.setValueSerializer(new Jackson2JsonRedisSerializer<SysUser>(  
          15.                 SysUser.class)); //請注意這里  
          16.   
          17.         return template;  
          18.     }  
          19. }  

           

          3 redis服務器配置

          Properties代碼  收藏代碼
          1. # REDIS (RedisProperties)  
          2. spring.redis.database= # database name  
          3. spring.redis.host=localhost # server host  
          4. spring.redis.password= # server password  
          5. spring.redis.port=6379 # connection port  
          6. spring.redis.pool.max-idle=8 # pool settings ...  
          7. spring.redis.pool.min-idle=0  
          8. spring.redis.pool.max-active=8  
          9. spring.redis.pool.max-wait=-1  
          10. spring.redis.sentinel.master= # name of Redis server  
          11. spring.redis.sentinel.nodes= # comma-separated list of host:port pairs  

           

          4 應用

          Java代碼  收藏代碼
          1. /** 
          2. *此處的dao操作使用的是spring data jpa,使用@Cacheable可以在任意方法上,*比如@Service或者@Controller的方法上 
          3. */  
          4. public interface SysUserRepo1 extends CustomRepository<SysUser, Long> {  
          5.     @Cacheable(value = "usercache")  
          6.     public SysUser findByUsername(String username);  
          7. }  

           

          5 檢驗

          Java代碼  收藏代碼
          1. @Controller  
          2. public class TestController {  
          3.       
          4.       
          5.     @Autowired   
          6.     SysUserRepo1 sysUserRepo1;  
          7.     @RequestMapping("/test")  
          8.     public @ResponseBody String test(){  
          9.   
          10.         final SysUser loaded = sysUserRepo1.findByUsername("wyf");  
          11.         final SysUser cached = sysUserRepo1.findByUsername("wyf");  
          12.           
          13.         return "ok";  
          14.     }   
          15. }  

           

          效果如圖:



           

          posted on 2015-02-25 10:02 paulwong 閱讀(5276) 評論(3)  編輯  收藏 所屬分類: REDIS

          Feedback

          # re: Spring Boot使用redis做數據緩存[未登錄] 2015-05-14 15:31 zzf

          配置如何使用  回復  更多評論   

          # re: Spring Boot使用redis做數據緩存[未登錄] 2015-05-14 15:32 zzf

          REDIS服務器配置:Properties 如何使用  回復  更多評論   

          # re: Spring Boot使用redis做數據緩存 2015-05-19 13:11 paulwong

          @zzf
          這里只是摘錄了部份代碼,還有RedisConnectionFactory ,這個可以上網查些資料即可。  回復  更多評論   


          主站蜘蛛池模板: 浮梁县| 吴川市| 吴江市| 太仓市| 泸溪县| 新巴尔虎右旗| 新绛县| 闸北区| 西充县| 石泉县| 武清区| 丹东市| 新乐市| 永寿县| 乐山市| 容城县| 得荣县| 宝应县| 旅游| 龙陵县| 廉江市| 宜城市| 芮城县| 大理市| 常州市| 华亭县| 台前县| 饶阳县| 尤溪县| 六盘水市| 乃东县| 吉木萨尔县| 雅安市| 两当县| 肇东市| 吉水县| 大田县| 新巴尔虎左旗| 长寿区| 浦北县| 隆昌县|