配置文件如 redis實現 spring-redis-data 初學習中已經介紹過來,下面主要給你們分享如何存取對象java
UserInfoDOredis
[java] view plaincopyspring
public class UserInfoDO { 學習
private String userId; this
private String name; spa
private String sex; .net
public String getUserId() { 對象
return userId; blog
} get
public void setUserId(String userId) {
this.userId = userId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
操做對象存取類
UserRedisClient
[java] view plaincopy
public class UserRedisClient extends RedisBase {
public static String PREFIX_USER = "user:";
public void save(final UserInfoDO user) {
final StringRedisTemplate redisTemplate = getTemplate();
redisTemplate.execute(new RedisCallback<UserInfoDO>() {
public UserInfoDO doInRedis(RedisConnection connection) throws DataAccessException {
String key = PREFIX_USER + user.getUserId();
BoundHashOperations<String, String, String> boundHashOperations = redisTemplate.boundHashOps(key);
Map<String, String> data = new HashMap<String, String>();
data.put("name", user.getName());
data.put("sex", user.getSex());
boundHashOperations.putAll(data);
return null;
}
});
}
public UserInfoDO getUserDoById(final String userId) {
StringRedisTemplate redisTemplate = getTemplate();
return redisTemplate.execute(new RedisCallback<UserInfoDO>() {
public UserInfoDO doInRedis(RedisConnection connection) throws DataAccessException {
String key = PREFIX_USER + userId;
BoundHashOperations<String, String, String> boundHashOperations = getTemplate().boundHashOps(key);
Map<String, String> data = boundHashOperations.entries();
if (data != null) {
UserInfoDO user = new UserInfoDO();
user.setUserId(userId);
user.setName(data.get("name"));
user.setSex(data.get("sex"));
return user;
} else {
return null;
}
}
});
}
}
我參考了其餘人的一些博客上在存和取的過程當中將各個字段序列化後存和取,不知道二者之間的區別和優劣,但願你們借鑑,另外我參考的一篇文章中的寫法我也貼出來,你們僅供參考,也但願多多提提意見,一塊兒學習。
存入對象:
獲取對象: