RedisTemplate与jedis
在java开发中操作redis常用的就是集成RedisTemplate与jedis这两种方式。RedisTemplate与spring整合较好,配置、操作比较简单。jedis性能较强,经过本人实际测试,jedis的性能至少是RedisTemplate的3倍以上,jedis结合jedisPool使用既可以有高性能又可以保证redis的连接可控。在性能要求、并发操作不高的场景建议使用RedisTemp
·
在java开发中操作redis常用的就是集成RedisTemplate与jedis这两种方式。RedisTemplate与spring整合较好,配置、操作比较简单。jedis性能较强,经过本人实际测试,jedis的性能至少是RedisTemplate的3倍以上,jedis结合jedisPool使用既可以有高性能又可以保证redis的连接可控。在性能要求、并发操作不高的场景建议使用RedisTemplate,在并发高,性能要求高的场景下建议使用jedis。下面是两种方式的集成方法,以在springboot中使用为例。
springboot集成redisTemplate
1.pom文件中加入redis依赖包
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
2.application.properties中加入redis相关配置
spring.redis.host=127.0.0.1 spring.redis.database=0 spring.redis.port=6379 spring.redis.password=
3.在需要使用的类中注入template对象并使用
@Autowired public RedisTemplate redisTemplate;
redisTemplate.opsForValue().set("test", "test");
springboot集成jedis
1.在pom文件中加入jedis依赖
<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
2..application.properties中加入jedispool相关配置
spring.redis.host=127.0.0.1 spring.redis.database=0 spring.redis.port=6379 spring.redis.password= spring.redis.timeout=10 spring.redis.jedis.pool.max-active=10 spring.redis.jedis.pool.max-idle=10 spring.redis.jedis.pool.min-idle=10 spring.redis.jedis.pool.max-wait=10000
3.编写JedisPoolFactory类,用于产生jedis对象
@Configuration public class JedisPoolFactory { @Value("${spring.redis.host}") private String host; @Value("${spring.redis.port}") private int port; @Value("${spring.redis.password}") private String password; @Value("${spring.redis.timeout}") private int timeout; @Value("${spring.redis.jedis.pool.max-active}") private int maxActive; @Value("${spring.redis.jedis.pool.max-idle}") private int maxIdle; @Value("${spring.redis.jedis.pool.min-idle}") private int minIdle; @Value("${spring.redis.jedis.pool.max-wait}") private long maxWaitMillis; @Bean public JedisPool generateJedisPoolFactory() { JedisPoolConfig poolConfig = new JedisPoolConfig(); poolConfig.setMaxTotal(maxActive); poolConfig.setMaxIdle(maxIdle); poolConfig.setMinIdle(minIdle); poolConfig.setMaxWaitMillis(maxWaitMillis); JedisPool jedisPool = new JedisPool(poolConfig, host, port, timeout); return jedisPool; } }
4.使用方法
Jedis jedis = jedisPool.getResource();
jedis.set("test", "test");
更多推荐
已为社区贡献2条内容
所有评论(0)