Redis是一个数据缓存的数据库,他的优点和缺点和memcash的比较都在redis分享.rar ppt中介绍,我就不多说了。
redis和Spring的整合的bean的配置文件为:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <!-- POOL配置 --> <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig"> <property name="maxActive" value="20" /> <property name="maxIdle" value="10" /> <property name="maxWait" value="1000" /> <property name="testOnBorrow" value="true"/> </bean> <!-- jedis shard信息配置 --> <bean id="jedis.shardInfo" class="redis.clients.jedis.JedisShardInfo"> <constructor-arg index="0" value="192.168.10.34" /> <constructor-arg index="1" value="6379" /> </bean> <!-- jedis shard pool配置 --> <bean id="shardedJedisPool" class="redis.clients.jedis.ShardedJedisPool"> <constructor-arg index="0" ref="jedisPoolConfig" /> <constructor-arg index="1"> <list> <ref bean="jedis.shardInfo" /> </list> </constructor-arg> </bean> <bean id="redisUtil" class="com.xingkongyongheng.trade.util.RedisUtil"> <property name="shardedJedisPool" ref="shardedJedisPool" /> </bean> <bean id="httpServerPipelineFactory" class="org.jboss.netty.example.http.snoop.HttpServerPipelineFactory" scope="prototype"> <property name="httpRequestHandler" ref="httpRequestHandler" /> </bean> <bean id="httpRequestHandler" class="org.jboss.netty.example.http.snoop.HttpRequestHandler" scope="prototype"> <property name="databaseUtil" ref="databaseUtil" /> <property name="redisUtil" ref="redisUtil" /> </bean> </beans>
可以单独写到一个xml文件中。
下面是一个获取ShardedJedis的一个类和一些简单方法的封装。
import redis.clients.jedis.ShardedJedis; import redis.clients.jedis.ShardedJedisPool; public class RedisUtil { /** * 数据源 */ private static ShardedJedisPool shardedJedisPool = (ShardedJedisPool) SpringHelper.getBean("shardedJedisPool"); /** * 获取数据库连接 * @return conn */ public static ShardedJedis getConnection() { ShardedJedis jedis=null; try { jedis=shardedJedisPool.getResource(); } catch (Exception e) { e.printStackTrace(); } return jedis; } /** * 关闭数据库连接 * @param conn */ public static void closeConnection(ShardedJedis jedis) { if (null != jedis) { try { shardedJedisPool.returnResource(jedis); } catch (Exception e) { e.printStackTrace(); } } } /** * 设置数据 * @param conn */ public boolean setData(String key,String value) { try { ShardedJedis jedis=shardedJedisPool.getResource(); jedis.set(key,value); shardedJedisPool.returnResource(jedis); return true; } catch (Exception e) { e.printStackTrace(); } return false; } /** * 获取数据 * @param conn */ public String getData(String key) { String value=null; try { ShardedJedis jedis=shardedJedisPool.getResource(); value=jedis.get(key); shardedJedisPool.returnResource(jedis); return value; } catch (Exception e) { e.printStackTrace(); } return value; } /** * 设置连接池 * @return 数据源 */ public void setShardedJedisPool(ShardedJedisPool shardedJedisPool) { this.shardedJedisPool = shardedJedisPool; } /** * 获取连接池 * @return 数据源 */ public ShardedJedisPool getShardedJedisPool() { return shardedJedisPool; } }
2.怎样存储一个对象的list,这个是很纠结,因为redis的参数只有String和byte[]数组,我的做法是把那个list变成的一个json的字符串放进去了。下面是我写的例子:
public void setList(String key,List list){ jedis.lpush("user", JSON.toJSONString(list)); pool.returnResource(jedis); }
其他的方法不会,要是谁有更好的方法,方便的话在评论上写一下思路或者参考资料,谢谢!
相关推荐
将Redis与Spring整合,可以充分利用Redis的高速存储优势,提升应用程序的性能。本文将深入探讨如何进行Redis与Spring的整合,并详细解析整合过程中的关键步骤。 首先,我们要理解Spring对数据源的支持。Spring提供...
将 Redis 整合到 Spring 中,可以方便地在应用中利用 Redis 的优势。下面我们将深入探讨 Redis 与 Spring 的整合以及 Redis 集群的实现。 **Redis 与 Spring 的整合** 1. **引入依赖**: 首先,你需要在项目中添加 ...
总的来说,"redis与spring整合"项目展示了如何在Spring环境中利用Redis进行高效的数据缓存,通过注解简化开发流程,并结合MyBatis实现数据库操作与缓存的协同。这不仅提高了应用性能,还增强了系统的可维护性和扩展...
在Spring框架中整合Redis,首先需要引入`spring-data-redis`的依赖,这个jar包包含了Spring对Redis的各种支持。Jedis是Redis官方推荐的Java客户端,所以在这个压缩包中包含的Jedis文件是连接和操作Redis服务器所必需...
通过Spring Data Redis模块,可以轻松地与Spring MVC进行交互,实现对Redis的操作,例如设置、获取和删除键值。 MyBatis是一个持久层框架,它允许开发者编写SQL语句并将其与Java代码分离。MyBatis通过XML或注解配置...
SpringCloud整合Redis缓存;版本:SpringCloud :Dalston.SR4;SpringBoot:1.5.14.RELEASE;Redis:3.2.0;Maven :3.5.3.代码下载下来即可用
在Maven项目中,可以在pom.xml文件中添加`spring-data-redis`和`jedis`库,这两个库分别提供了Spring对Redis的支持和Jedis,一个Java客户端连接Redis。 ```xml <groupId>org.springframework.data <artifactId>...
将Spring与Redis进行整合,可以有效地提升应用的性能和响应速度,特别是在数据读写频繁的应用中。 "Spring3.0整合redis相关jar"这个主题主要涉及的是如何在Spring 3.0版本中集成Redis作为数据存储或缓存解决方案。...
描述中的“spring5+hibernate5+Spring-session-data-redis2+Spring-data-redis2整合”进一步扩展了集成环境,引入了Hibernate 5作为ORM(对象关系映射)工具,Spring-session-data-redis和Spring-data-redis2则是...
以上是Redis与Spring整合的基本步骤和常用操作。在实际应用中,可能还需要考虑事务支持、过期策略、连接池管理等更复杂的场景。Spring Data Redis提供了丰富的功能和灵活性,能够满足各种缓存和数据存储需求。通过...
Spring框架提供了一种优雅的方式来整合缓存管理,其中包括对Redis的支持。Redis是一个开源的、高性能的键值数据库,常用于数据缓存、消息队列等多种场景。本文将详细介绍如何使用Spring集成Redis来实现数据缓存。 #...
redis与spring整合工程,使用redisTemplate操作redis,导入eclipse可以直接使用。
5. **测试代码**:在`RedisDemo`中,可能会有测试类或者方法,用来验证Redis集群与Spring的整合是否成功,例如存储和检索数据,检查数据分布情况,以及进行故障转移的测试。 6. **数据分布与槽管理**:由于是关于...
commons-pool2-2.3.jar,jedis-2.8.0.jar,spring-data-redis-1.6.0.RELEASE.jar,spring-session-1.1.1.RELEASE.jar,Spring-data-redis(Version 1.6.0.RC1)中文版.pdf
4. **Spring整合Mybatis**:Mybatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。Spring与Mybatis结合,可以通过Spring的IoC容器管理Mybatis的SqlSessionFactory和Mapper接口,简化数据库操作。...
在整合 Redis 和 Spring 的过程中,主要涉及以下几个关键知识点: 1. **Spring Data Redis**:Spring Data Redis 是 Spring 社区的一个项目,它提供了一套用于操作 Redis 数据库的高级抽象层,简化了与 Redis 的...
在IT行业中,SSH(Spring、Struts2、Hibernate)是一个经典的Java Web开发框架组合,而Redis则是一个高性能的键值存储系统,常用于缓存和数据持久化。将SSH与Redis整合,可以提升应用程序的性能和响应速度。下面将...
整合Spring和Redis可以带来以下好处: 1. 提高性能:Redis作为内存数据库,读写速度极快,适合处理大量并发请求。 2. 支持多种数据结构:Redis提供了字符串、哈希、列表、集合和有序集合等多种数据结构,方便存储和...