redis實現 spring-redis-data初學習二 進階,存取對象

配置文件如  redis實現 spring-redis-data 初學習中已經介紹過來,下面主要給你們分享如何存取對象java

UserInfoDOredis

[java] view plaincopyspring

  1. public class UserInfoDO {  學習

  2.     private String userId;  this

  3.     private String name;  spa

  4.     private String sex;  .net

  5.   

  6.     public String getUserId() {  對象

  7.         return userId;  blog

  8.     }  get

  9.   

  10.     public void setUserId(String userId) {  

  11.         this.userId = userId;  

  12.     }  

  13.   

  14.     public String getName() {  

  15.         return name;  

  16.     }  

  17.   

  18.     public void setName(String name) {  

  19.         this.name = name;  

  20.     }  

  21.   

  22.     public String getSex() {  

  23.         return sex;  

  24.     }  

  25.   

  26.     public void setSex(String sex) {  

  27.         this.sex = sex;  

  28.     }  

  29.   

  30. }  

操做對象存取類

UserRedisClient 

[java] view plaincopy

  1. public class UserRedisClient extends RedisBase {  

  2.     public static String PREFIX_USER = "user:";  

  3.   

  4.     public void save(final UserInfoDO user) {  

  5.         final StringRedisTemplate redisTemplate = getTemplate();  

  6.         redisTemplate.execute(new RedisCallback<UserInfoDO>() {  

  7.             public UserInfoDO doInRedis(RedisConnection connection) throws DataAccessException {  

  8.                 String key = PREFIX_USER + user.getUserId();  

  9.                 BoundHashOperations<String, String, String> boundHashOperations = redisTemplate.boundHashOps(key);  

  10.                 Map<String, String> data = new HashMap<String, String>();  

  11.                 data.put("name", user.getName());  

  12.                 data.put("sex", user.getSex());  

  13.                 boundHashOperations.putAll(data);  

  14.                 return null;  

  15.             }  

  16.         });  

  17.     }  

  18.   

  19.     public UserInfoDO getUserDoById(final String userId) {  

  20.         StringRedisTemplate redisTemplate = getTemplate();  

  21.         return redisTemplate.execute(new RedisCallback<UserInfoDO>() {  

  22.             public UserInfoDO doInRedis(RedisConnection connection) throws DataAccessException {  

  23.                 String key = PREFIX_USER + userId;  

  24.                 BoundHashOperations<String, String, String> boundHashOperations = getTemplate().boundHashOps(key);  

  25.                 Map<String, String> data = boundHashOperations.entries();  

  26.                 if (data != null) {  

  27.                     UserInfoDO user = new UserInfoDO();  

  28.                     user.setUserId(userId);  

  29.                     user.setName(data.get("name"));  

  30.                     user.setSex(data.get("sex"));  

  31.                     return user;  

  32.                 } else {  

  33.                     return null;  

  34.                 }  

  35.             }  

  36.         });  

  37.     }  

  38. }  

我參考了其餘人的一些博客上在存和取的過程當中將各個字段序列化後存和取,不知道二者之間的區別和優劣,但願你們借鑑,另外我參考的一篇文章中的寫法我也貼出來,你們僅供參考,也但願多多提提意見,一塊兒學習。

存入對象:


獲取對象:

相關文章
相關標籤/搜索