Redis客户端封装-RedisDS

Redis客户端封装-RedisDS

介绍

RedisDS基于Jedis封装,需自行引入Jedis依赖。

使用

引入依赖

  1. <dependency>
  2. <groupId>redis.clients</groupId>
  3. <artifactId>jedis</artifactId>
  4. <version>2.9.0</version>
  5. </dependency>

配置

在ClassPath(或者src/main/resources)的config目录下下新建redis.setting

  1. #-------------------------------------------------------------------------------
  2. # Redis客户端配置样例
  3. # 每一个分组代表一个Redis实例
  4. # 无分组的Pool配置为所有分组的共用配置,如果分组自己定义Pool配置,则覆盖共用配置
  5. # 池配置来自于:https://www.cnblogs.com/jklk/p/7095067.html
  6. #-------------------------------------------------------------------------------
  7. #----- 默认(公有)配置
  8. # 地址,默认localhost
  9. host = localhost
  10. # 端口,默认6379
  11. port = 6379
  12. # 超时,默认2000
  13. timeout = 2000
  14. # 连接超时,默认timeout
  15. connectionTimeout = 2000
  16. # 读取超时,默认timeout
  17. soTimeout = 2000
  18. # 密码,默认无
  19. password =
  20. # 数据库序号,默认0
  21. database = 0
  22. # 客户端名,默认"Hutool"
  23. clientName = Hutool
  24. # SSL连接,默认false
  25. ssl = false;
  26. #----- 自定义分组的连接
  27. [custom]
  28. # 地址,默认localhost
  29. host = localhost
  30. # 连接耗尽时是否阻塞, false报异常,ture阻塞直到超时, 默认true
  31. BlockWhenExhausted = true;
  32. # 设置的逐出策略类名, 默认DefaultEvictionPolicy(当连接超过最大空闲时间,或连接数超过最大空闲连接数)
  33. evictionPolicyClassName = org.apache.commons.pool2.impl.DefaultEvictionPolicy
  34. # 是否启用pool的jmx管理功能, 默认true
  35. jmxEnabled = true;
  36. # 是否启用后进先出, 默认true
  37. lifo = true;
  38. # 最大空闲连接数, 默认8个
  39. maxIdle = 8
  40. # 最小空闲连接数, 默认0
  41. minIdle = 0
  42. # 最大连接数, 默认8个
  43. maxTotal = 8
  44. # 获取连接时的最大等待毫秒数(如果设置为阻塞时BlockWhenExhausted),如果超时就抛异常, 小于零:阻塞不确定的时间, 默认-1
  45. maxWaitMillis = -1
  46. # 逐出连接的最小空闲时间 默认1800000毫秒(30分钟)
  47. minEvictableIdleTimeMillis = 1800000
  48. # 每次逐出检查时 逐出的最大数目 如果为负数就是 : 1/abs(n), 默认3
  49. numTestsPerEvictionRun = 3;
  50. # 对象空闲多久后逐出, 当空闲时间>该值 且 空闲连接>最大空闲数 时直接逐出,不再根据MinEvictableIdleTimeMillis判断 (默认逐出策略)
  51. SoftMinEvictableIdleTimeMillis = 1800000
  52. # 在获取连接的时候检查有效性, 默认false
  53. testOnBorrow = false
  54. # 在空闲时检查有效性, 默认false
  55. testWhileIdle = false
  56. # 逐出扫描的时间间隔(毫秒) 如果为负数,则不运行逐出线程, 默认-1
  57. timeBetweenEvictionRunsMillis = -1

构建

  1. Jedis jedis = RedisDS.create().getJedis();