SpringDataRedis的用法介绍

本篇内容介绍了“Spring Data redis的用法介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

创新互联建站是专业的城中网站建设公司,城中接单;提供成都网站设计、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行城中网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

Spring Data Redis介绍

Spring Data Redis是Spring官方推出,可以算是Spring框架集成Redis操作的一个子框架,封装了Redis的很多命令,可以很方便的使用Spring操作Redis数据库,Spring对很多工具都提供了类似的集成,如Spring Data MongDB、Spring Data JPA等,Spring Data Redis只是其中一种。

环境搭建

要使用SDR,首先需要搭建Spring+SpringMVC环境,由于这个不是本文的重点,因此这一步我直接略过,Spring+SpringMVC环境搭建成功后,接下来我们要整合SDR,首先需要添加如下依赖:


redis.clients
jedis
2.9.0


org.springframework.data
spring-data-redis
RELEASE


org.apache.commons
commons-pool2
RELEASE

然后创建在resources目录下创建redis.properties文件作为redis的配置文件,如下:

redis.host=192.168.248.128
redis.port=6379
redis.maxIdle=300
redis.maxTotal=600
redis.maxWait=1000
redis.testOnBorrow=true

在spring的配置文件中,添加如下bean:


























好了,在Spring中配置了redisTemplate之后,接下来我们就可以在Dao层注入redisTemplate进而使用了。

接下来我们首先创建实体类User,注意User一定要可序列化:

public class User implements Serializable{
private String username;
private String password;
private String id;
//get/set省略
}

然后在Dao层实现数据的添加和获取,如下:

@Repository
public class HelloDao {
@Autowired
RedisTemplate redisTemplate;
public void set(String key, String value) {
ValueOperations ops = redisTemplate.opsForValue();
ops.set(key, value);
}
public String get(String key) {
ValueOperations ops = redisTemplate.opsForValue();
return ops.get(key).toString();
}
public void setuser(User user) {
ValueOperations ops = redisTemplate.opsForValue();
ops.set(user.getId(), user);
}
public User getuser(String id) {
ValueOperations ops = redisTemplate.opsForValue();
User user = ops.get(id);
System.out.println(user);
return user;
}
}

SDR官方文档中对Redistemplate的介绍,通过Redistemplate可以调用ValueOperations和ListOperations等等方法,分别是对Redis命令的高级封装。但是ValueOperations等等这些命令最终是要转化成为RedisCallback来执行的。也就是说通过使用RedisCallback可以实现更强的功能。

最后,给大家展示下我的Service和Controller,如下:

@Service
public class HelloService {
@Autowired
HelloDao helloDao;
public void set(String key, String value) {
helloDao.set(key,value);
}

public String get(String key) {
return helloDao.get(key);
}

public void setuser(User user) {
helloDao.setuser(user);
}

public String getuser(String id) {
String s = helloDao.getuser(id).toString();
return s;
}
}
Controller:
@Controller
public class HelloController {
@Autowired
HelloService helloService;

@RequestMapping("/set")
@ResponseBody
public void set(String key, String value) {
helloService.set(key, value);
}

@RequestMapping("/get")
@ResponseBody
public String get(String key) {
return helloService.get(key);
}

@RequestMapping("/setuser")
@ResponseBody
public void setUser() {
User user = new User();
user.setId("1");
user.setUsername("深圳");
user.setPassword("sang");
helloService.setuser(user);
}

@RequestMapping(value = "/getuser",produces = "text/html;charset=UTF-8")
@ResponseBody
public String getUser() {
return helloService.getuser("1");
}
}

“Spring Data Redis的用法介绍”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


文章标题:SpringDataRedis的用法介绍
分享链接:http://ybzwz.com/article/ghdhdj.html