全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java中对Redis的缓存进行操作的示例代码

Redis 是一个NoSQL数据库,也是一个高性能的key-value数据库。一般我们在做Java项目的时候,通常会了加快查询效率,减少和数据库的连接次数,我们都会在代码中加入缓存功能。Redis的高效缓存功能给我们解决了难题。下面我主要讲讲在Java项目中怎么去连接Redis服务器以及需要注意的事项。

1.导入必须的Jar包

使用Java操作Redis需要两个必须的Jar包:jedis-2.5.1.jar 和  commons-pool2-2.0.jar 。每个版本可以不一样,根据你自己下载的为准。

2.实现RedisUtils工具类

把连接Redis服务器的代码封装到一个工具类里面,这样就可以直接调用攻击类来获取Redis的服务。

 RedisUtils工具类代码如下:  以下代码和网上其他的实现类大同小异,其实这个没什么创新的东西。

下面代码需要注意的地方:config.setMaxTotal(MAX_TOTAL); 由于我的jedis版本是2.5的,所有没有setMaxActive这个方法。 

public class RedisUtils {

  //Redis服务器IP
  private static String ADDR = "192.168.125.130";
  
  //Redis的端口号
  private static int PORT = 6379;
  
  //访问密码,若你的redis服务器没有设置密码,就不需要用密码去连接
  private static String AUTH = "123456";
  
  //可用连接实例的最大数目,默认值为8;
  private static int MAX_TOTAL = 512;
  
  //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值也是8。
  private static int MAX_IDLE = 50;
  
  //等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。
  private static int MAX_WAIT = 10000;
  
  private static int TIMEOUT = 10000;
  
  //在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;
  private static boolean TEST_ON_BORROW = true;
  
  private static JedisPool jedisPool = null;
  
  /**
   * 初始化Redis连接池
   */
  static {
    try {
      JedisPoolConfig config = new JedisPoolConfig();
      config.setMaxTotal(MAX_TOTAL);
      config.setMaxIdle(MAX_IDLE);
      config.setMaxWaitMillis(MAX_WAIT);
      config.setTestOnBorrow(TEST_ON_BORROW);
      jedisPool = new JedisPool(config, ADDR, PORT, TIMEOUT, AUTH);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
  
  /**
   * 获取Jedis实例
   * @return
   */
  public synchronized static Jedis getJedis() {
    try {
      if (jedisPool != null) {
        Jedis jedis = jedisPool.getResource();
        return jedis;
      } else {
        return null;
      }
    } catch (Exception e) {
      e.printStackTrace();
      return null;
    }
  }
  
  /**
   * 释放jedis资源
   * @param jedis
   */
  public static void returnResource(final Jedis jedis) {
    if (jedis != null) {
      jedisPool.returnResource(jedis);
    }
  }
  
}

3.进行Redis测试

接下来就可以进行测试了。一般我们都是用Junit测试工具来测试:测试部分代码如下 

    @Test
    public void testRedisPool() {
       RedisUtils.getJedis().set("xiaomin", ”12122“);
      System.out.println(RedisUtils2.getJedis().get("xiaomin"));
    }

当然了Redis 还能操作List, Set,SortSeted,Hash等数据类型的数据,这些就留给你自己慢慢去学习了。今天就话说到了这。希望对大家的学习有所帮助,也希望大家多多支持。


# java  # Redis  # 缓存  # redis缓存用法  # Java缓存池代码实例详解  # Java本地缓存的实现代码  # Java中LocalCache本地缓存实现代码  # Java客户端利用Jedis操作redis缓存示例代码  # Java代码读取文件缓存问题解决  # Java基于LoadingCache实现本地缓存的示例代码  # java性能优化之代码缓存优化  # 你自己  # 需要注意  # 值为  # 就可以  # 都是  # 是一个  # 最多  # 就不  # 还能  # 其他的  # 给我们  # 会在  # 大同小异  # 高性能  # 需要用  # 会了  # 大家多多  # 若你  # 进行测试  # 默认值 


相关文章: 深圳防火门网站制作公司,深圳中天明防火门怎么编码?  北京网站制作公司哪家好一点,北京租房网站有哪些?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  网站制作话术技巧,网站推广做的好怎么话术?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  c# F# 的 MailboxProcessor 和 C# 的 Actor 模型  建站之星如何优化SEO以实现高效排名?  定制建站哪家更专业可靠?推荐榜单揭晓  如何在景安服务器上快速搭建个人网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  网站网页制作专业公司,怎样制作自己的网页?  如何在阿里云完成域名注册与建站?  如何选择靠谱的建站公司加盟品牌?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  如何在Golang中使用replace替换模块_指定本地或远程路径  如何在阿里云域名上完成建站全流程?  制作网站的基本流程,设计网站的软件是什么?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  建站主机核心功能解析:服务器选择与网站搭建流程指南  如何安全更换建站之星模板并保留数据?  建站主机服务器选型指南与性能优化方案解析  宝塔新建站点报错如何解决?  如何通过老薛主机一键快速建站?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  建站之星2.7模板快速切换与批量管理功能操作指南  建站之星好吗?新手能否轻松上手建站?  c# 在ASP.NET Core中管理和取消后台任务  企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?  大连 网站制作,大连天途有线官网?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  平台云上自主建站:模板化设计与智能工具打造高效网站  建站之星多图banner生成与模板自定义指南  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  如何获取上海专业网站定制建站电话?  大型企业网站制作流程,做网站需要注册公司吗?  php json中文编码为null的解决办法  建站之星如何修改网站生成路径?  如何使用Golang table-driven基准测试_多组数据测量函数效率  Python如何创建带属性的XML节点  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  小型网站建站如何选择虚拟主机?  如何用虚拟主机快速搭建网站?详细步骤解析  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  实现点击下箭头变上箭头来回切换的两种方法【推荐】  如何在Windows环境下新建FTP站点并设置权限?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  盐城做公司网站,江苏电子版退休证办理流程?  如何生成腾讯云建站专用兑换码? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。