在SpringMVC中使用Redis的简单实例
来源:互联网 发布:江恩四方形软件下载 编辑:程序博客网 时间:2024/05/21 17:52
本实例使用maven构建,需要在pom中引入两个jar包
<!-- 使用redis --><dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-redis</artifactId><version>1.4.1.RELEASE</version></dependency><!-- 使用jedis --><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.6.2</version></dependency>
spring-context.xml代码需要如下配置
<!-- redis工厂 --><bean id="jedisConnectionFactory"class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"p:host-name="192.168.122.80" p:port="6379" p:password=""></bean><!-- redis服务封装 --><bean id="redisService" class="com.SSM.redis.RedisService"></bean>这里配置了一个跟spring 集成的redis客户端,ip port password自己定
下面是RedisService,里面包含了对redis的方法,还有更多的方法没有去使用,这里当一个入门的小例子吧
package com.SSM.redis;import java.util.Set;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Qualifier;import org.springframework.data.redis.connection.jedis.JedisConnectionFactory;import redis.clients.jedis.Jedis;/** * 封装redis 缓存服务器服务接口 */public class RedisService { /** * 通过key删除(字节) * @param key */ public void del(byte [] key){ this.getJedis().del(key); } /** * 通过key删除 * @param key */ public void del(String key){ this.getJedis().del(key); } /** * 添加key value 并且设置存活时间(byte) * @param key * @param value * @param liveTime */ public void set(byte [] key,byte [] value,int liveTime){ this.set(key, value); this.getJedis().expire(key, liveTime); } /** * 添加key value 并且设置存活时间 * @param key * @param value * @param liveTime */ public void set(String key,String value,int liveTime){ this.set(key, value); this.getJedis().expire(key, liveTime); } /** * 添加key value * @param key * @param value */ public void set(String key,String value){ this.getJedis().set(key, value); } /**添加key value (字节)(序列化) * @param key * @param value */ public void set(byte [] key,byte [] value){ this.getJedis().set(key, value); } /** * 获取redis value (String) * @param key * @return */ public String get(String key){ String value = this.getJedis().get(key); return value; } /** * 获取redis value (byte [] )(反序列化) * @param key * @return */ public byte[] get(byte [] key){ return this.getJedis().get(key); } /** * 通过正则匹配keys * @param pattern * @return */ public Set<String> keys(String pattern){ return this.getJedis().keys(pattern); } /** * 检查key是否已经存在 * @param key * @return */ public boolean exists(String key){ return this.getJedis().exists(key); } /** * 清空redis 所有数据 * @return */ public String flushDB(){ return this.getJedis().flushDB(); } /** * 查看redis里有多少数据 */ public long dbSize(){ return this.getJedis().dbSize(); } /** * 检查是否连接成功 * @return */ public String ping(){ return this.getJedis().ping(); } /** * 获取一个jedis 客户端 * @return */ private Jedis getJedis(){ if(jedis == null){ return jedisConnectionFactory.getShardInfo().createResource(); } return jedis; } /** * 保存数据 * @return */ public String saveJedis(){ return this.getJedis().save(); } private RedisService (){ } //操作redis客户端 private static Jedis jedis; @Autowired @Qualifier("jedisConnectionFactory") private JedisConnectionFactory jedisConnectionFactory;}
下面是测试代码TestRedis.java
import java.util.Set;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;/** * redis spring 简单例子 */public class TestRedis { public static void main(String[] args) throws InterruptedException { ApplicationContext app = new ClassPathXmlApplicationContext("classpath:spring-context.xml"); //这里已经配置好,属于一个redis的服务接口 RedisService redisService = (RedisService) app.getBean("redisService"); String ping = redisService.ping();//测试是否连接成功,连接成功输出PONG System.out.println(ping); //首先,我们看下redis服务里是否有数据 long dbSizeStart = redisService.dbSize(); System.out.println(dbSizeStart); redisService.set("username", "oyhk");//设值(查看了源代码,默认存活时间30分钟) String username = redisService.get("username");//取值 System.out.println(username); redisService.set("username1", "oyhk1", 1);//设值,并且设置数据的存活时间(这里以秒为单位) String username1 = redisService.get("username1"); System.out.println(username1); Thread.sleep(2000);//我睡眠一会,再去取,这个时间超过了,他的存活时间 String liveUsername1 = redisService.get("username1"); System.out.println(liveUsername1);//输出null //是否存在 boolean exist = redisService.exists("username"); System.out.println(exist); //查看keys Set<String> keys = redisService.keys("*");//这里查看所有的keys System.out.println(keys);//只有username username1(已经清空了) //删除 redisService.set("username2", "oyhk2"); String username2 = redisService.get("username2"); System.out.println(username2); redisService.del("username2"); String username2_2 = redisService.get("username2"); System.out.println(username2_2);//如果为null,那么就是删除数据了 //dbsize long dbSizeEnd = redisService.dbSize(); System.out.println(dbSizeEnd); //清空reids所有数据 //redisService.flushDB(); }}
参考的博客:http://blog.csdn.net/sunny243788557/article/details/34431357
阅读全文
0 0
- 在SpringMVC中使用Redis的简单实例
- springmvc redis 简单实例
- Redis在Java中使用的一些简单介绍
- 重温redis--redis在springmvc下的使用
- 简单的SpringMvc实例
- redis在java中使用实例及常用命令
- 缓存第四篇:在maven项目中使用redis实例
- 最简单的springMVC实例
- 一个简单的SpringMVC实例
- (java)使用redis的第一个简单实例
- 在SpringMVC中使用JSON的配置
- SpringMVC的简单使用
- SpringMVC整合Redis实例
- 简单的redis实例 简单易懂搬运
- redis的简单使用
- Redis的简单使用
- redis的简单使用
- redis的简单使用
- pom.xml build src文件夹设置
- Java问题收录
- 我的安卓手机上的垃圾文件清理记录
- dao 接口定义了一个方法,报错 The method xxx is undefined for the type xxx;
- sja1000调试经验
- 在SpringMVC中使用Redis的简单实例
- iPhone X的简单适配
- HTML5宏观概览、新增特性一览
- Ajax参数
- MAVEN入门
- 虚拟服务器INetSim的安装,以及配置
- IOS设计模式之单例模式(Singleton)
- html之全选反选取消
- 知识产权