redis实现 spring-redis-data,存取对象
2014-09-22 13:21
399 查看
配置文件如 redis实现 spring-redis-data 初学习中已经介绍过来,下面主要给大家分享如何存取对象
UserInfoDO
[java] view
plaincopy
public class UserInfoDO {
private String userId;
private String name;
private String sex;
public String getUserId() {
return userId;
}
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;
}
}
});
}
}
我参考了其他人的一些博客上在存和取的过程中将各个字段序列化后存和取,不知道两者之间的区别和优劣,希望大家借鉴,另外我参考的一篇文章中的写法我也贴出来,大家仅供参考,也希望多多提提意见,一起学习。
存入对象:
获取对象:
UserInfoDO
[java] view
plaincopy
public class UserInfoDO {
private String userId;
private String name;
private String sex;
public String getUserId() {
return userId;
}
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;
}
}
});
}
}
我参考了其他人的一些博客上在存和取的过程中将各个字段序列化后存和取,不知道两者之间的区别和优劣,希望大家借鉴,另外我参考的一篇文章中的写法我也贴出来,大家仅供参考,也希望多多提提意见,一起学习。
存入对象:
获取对象:
相关文章推荐
- redis实现 spring-redis-data初学习二 进阶,存取对象
- redis实现 spring-redis-data初学习二 进阶,存取对象
- Redis实现分布式缓存(实现存取对象),Spring与Spring Boot配置
- Spring-data-redis;存储对象实例
- 关于Spring Data redis几种对象序列化的比较
- Maven中Spring-Data-Redis存储对象(redisTemplate)
- redis实现 spring-redis-data初学习
- Spring Data Redis实现一个订阅/发布系统
- 利用redis(spring-data-redis)锁的功能来实现定时器的分布式
- 使用Spring-Data-Redis存储对象(redisTemplate)
- spring data redis 集群(sentinel实现)和simple spring memcached分布式初使用
- 使用Spring Data Redis实现缓存遇到的一些问题
- 关于Spring Data redis几种对象序列化的比较
- Maven中Spring-Data-Redis存储对象(redisTemplate)
- Spring-Data-Redis存储对象(redisTemplate)
- redis实现 spring-redis-data初学习
- Maven中Spring-Data-Redis存储对象(redisTemplate)
- 使用Spring Data +Redis实现缓存
- redis实现spring-redis-data的入门实例
- Maven中Spring-Data-Redis存储对象(redisTemplate)