Spring Data Redis的用法介绍
本篇内容介绍了"Spring Data Redis的用法介绍"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
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.128redis.port=6379redis.maxIdle=300redis.maxTotal=600redis.maxWait=1000redis.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层实现数据的添加和获取,如下:
@Repositorypublic class HelloDao {@AutowiredRedisTemplate 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,如下:
@Servicepublic class HelloService {@AutowiredHelloDao 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:@Controllerpublic class HelloController {@AutowiredHelloService helloService;@RequestMapping("/set")@ResponseBodypublic void set(String key, String value) {helloService.set(key, value);}@RequestMapping("/get")@ResponseBodypublic String get(String key) {return helloService.get(key);}@RequestMapping("/setuser")@ResponseBodypublic 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")@ResponseBodypublic String getUser() {return helloService.getuser("1");}}"Spring Data Redis的用法介绍"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!