Java 中 使用 Redis 工具,要先去 maven 仓库中,下载 jedis jar包

       jedis 依赖

  1. <dependency>
  2. <groupId>redis.clients</groupId>
  3. <artifactId>jedis</artifactId>
  4. <version>2.9.0</version>
  5. </dependency>
  1. //连接 Redis
  2. Jedis jedis = new Jedis("localhost", 6379);
  3. //如果需要密码
  4. //jedis.auth("");
  5. //记录操作次数
  6. int i = 0;
  7. try {
  8. long start = System.currentTimeMillis();
  9. while (true) {
  10. long end = System.currentTimeMillis();
  11. //当 大于等于 1000毫秒(1秒)时,结束
  12. if (end - start >= 1000) {
  13. break;
  14. }
  15. i++;
  16. jedis.set("testId" + i, i + " ");
  17. }
  18. } finally {
  19. //关闭 Redis
  20. jedis.close();
  21. }
  22. //打印1秒内对 Redis 的操作次数
  23. System.out.println("Redis每秒操作:" + i + "次");

 结果:

  1. Redis每秒操作:1753
  1. //配置 连接池
  2. JedisPoolConfig config = new JedisPoolConfig();
  3. //最大空闲数
  4. config.setMaxIdle(50);
  5. //最大连接数
  6. config.setMaxTotal(100);
  7. //最大等待数 毫秒数
  8. config.setMaxWaitMillis(20000);
  9. //创建 连接池
  10. JedisPool pool = new JedisPool(config,"localhost");
  11. //从连接池中获取单个连接
  12. Jedis jedis = pool.getResource();
  13. //如果需要密码
  14. //jedis.auth("");
  15. //记录操作次数
  16. int i = 0;
  17. try {
  18. long start = System.currentTimeMillis();
  19. while (true) {
  20. long end = System.currentTimeMillis();
  21. //当 大于等于 1000毫秒(1秒)时,结束
  22. if (end - start >= 1000) {
  23. break;
  24. }
  25. i++;
  26. jedis.set("testId" + i, i + " ");
  27. }
  28. } finally {
  29. //关闭 Redis
  30. jedis.close();
  31. }
  32. //打印1秒内对 Redis 的操作次数
  33. System.out.println("Redis每秒操作:" + i + "次");

运行结果:

  1. Redis每秒操作:5022

      在Spring中使用Redis,除了需要jedis.jar外,还需要 spring-data-redis.jar 的依赖架包

      spring-data-redis.jar 依赖包

  1. <dependency>
  2. <groupId>org.springframework.data</groupId>
  3. <artifactId>spring-data-redis</artifactId>
  4. <version>2.1.3.RELEASE</version>
  5. </dependency>
  • 配置连接池

  • 配置Spring所提供的连接工厂

    • JredisConnectionFactory

    • JedisConnectionFactory

    • LettuceConnectionFactory

    • SrpConnectionFactory

  • 配置Spring RedisTemplate

Spring所提供的连接工厂,无论 如何它们都是接口 RedisConnectionFacory 的实现类

使用 JedisConnectionFactory 较为广泛。

  1. @Configuration//声明当前类 是配置类
  2. public class SpringRedisConfig {
  3. //配置连接池
  4. @Bean
  5. JedisPoolConfig poolConfig(){
  6. //配置连接池
  7. JedisPoolConfig config = new JedisPoolConfig();
  8. //最大空闲数
  9. config.setMaxIdle(50);
  10. //最大等待时间
  11. config.setMaxWaitMillis(20000);
  12. //最大连接数
  13. config.setMaxTotal(100);
  14. return config;
  15. }
  16. //配置 redis 连接工厂
  17. @Bean
  18. RedisConnectionFactory connectionFactory(){
  19. JedisConnectionFactory connectionFactory = new JedisConnectionFactory(poolConfig());
  20. return connectionFactory;
  21. }
  22. //配置 Spring RedisTemplate
  23. @Bean
  24. StringRedisTemplate redisTemplate(){
  25. return new StringRedisTemplate(connectionFactory());
  26. }
  27. }

测试示例:

  1. public static void main(String[] args) {
  2. //扫描 spring 注解
  3. AnnotationConfigApplicationContext bean = new AnnotationConfigApplicationContext(SpringRedisConfig.class);
  4. // 得到 spring 容器 中 的类
  5. StringRedisTemplate stringRedisTemplate =
  6. (StringRedisTemplate) bean.getBean("redisTemplate");
  7. //使用 SpringRedisTemplate
  8. stringRedisTemplate.boundValueOps("test").set("zhe shi yi ge ce shi !");
  9. System.out.println(stringRedisTemplate.boundValueOps("test").get());
  10. }

 

运行效果:

  1. zhe shi yi ge ce shi !

配置文件

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  4. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
  5.  
  6. <!--配置连接池-->
  7. <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig">
  8. <!--最大等待时间-->
  9. <property name="maxWaitMillis" value="20000"/>
  10. <!--最大空闲数-->
  11. <property name="maxIdle" value="50"/>
  12. <!--最大连接数-->
  13. <property name="maxTotal" value="100"/>
  14. </bean>
  15. <!--Spring 提供的redis连接工厂-->
  16. <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory">
  17. <property name="poolConfig" ref="poolConfig"/>
  18. </bean>
  19. <!--Spring Template-->
  20. <bean id="stringRedisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate">
  21. <property name="connectionFactory" ref="connectionFactory"/>
  22. </bean>
  23.  
  24. </beans>

测试类

  1. public static void main(String[] args) {
  2. //加载 配置文件
  3. ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("redisConfig.xml");
  4. //从容器中 获取 一个 bean
  5. StringRedisTemplate bean = (StringRedisTemplate) context.getBean("stringRedisTemplate");
  6. bean.boundValueOps("test").set("zhe shi yi ge jian dan de ce shi ");
  7. System.out.println(bean.boundValueOps("test").get());
  8. }

 

运行效果:

  1. zhe shi yi ge jian dan de ce shi

 

版权声明:本文为oukele原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/oukele/p/10246795.html