我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家。
扫描二维码或搜索下图红色VX号,加VX好友,拉你进【程序员面试学习交流群】免费领取。也欢迎各位一起在群里探讨技术。
推荐文章:Java 面试知识点解析;Mysql优化技巧(数据库设计、命名规范、索引优化

import org.slf4j.Logger; import org.slf4j.LoggerFactory; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; import java.io.IOException; import java.io.InputStream; import java.util.Properties; public class MyJedisPool { private final static Logger logger = LoggerFactory.getLogger(MyJedisPool.class); private static JedisPool readPool = null; private static JedisPool writePool = null; //静态代码初始化池配置 static { try{ Properties props = new Properties(); InputStream in = MyJedisPool.class.getResourceAsStream("/redis.properties"); props.load(in); //创建jedis池配置实例 JedisPoolConfig config = new JedisPoolConfig(); //设置池配置项值 config.setMaxTotal(Integer.valueOf(props.getProperty("jedis.pool.maxActive"))); config.setMaxIdle(Integer.valueOf(props.getProperty("jedis.pool.maxIdle"))); config.setMaxWaitMillis(Long.valueOf(props.getProperty("jedis.pool.maxWait"))); config.setTestOnBorrow(Boolean.valueOf(props.getProperty("jedis.pool.testOnBorrow"))); config.setTestOnReturn(Boolean.valueOf(props.getProperty("jedis.pool.testOnReturn"))); //根据配置实例化jedis池 readPool = new JedisPool(config, props.getProperty("redisReadURL"), Integer.valueOf(props.getProperty("redisReadPort"))); writePool = new JedisPool(config, props.getProperty("redisWriteURL"), Integer.valueOf(props.getProperty("redisWritePort"))); }catch (IOException e) { logger.info("redis连接池异常",e); } } /**获得jedis对象*/ public static Jedis getReadJedisObject(){ return readPool.getResource(); } /**获得jedis对象*/ public static Jedis getWriteJedisObject(){ return writePool.getResource(); } /**归还jedis对象*/ public static void returnJedisOjbect(Jedis jedis){ if (jedis != null) { jedis.close(); } } }

import redis.clients.jedis.Jedis;import java.util.Set;public class RedisUtils {/*** 获取hash表中所有key* @param name* @return*/public static Set<String> getHashAllKey(String name){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.hkeys(name);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 从redis hash表中获取* @param hashName* @param key* @return*/public static String getHashKV(String hashName,String key){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.hget(hashName, key);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 删除hash表的键值对* @param hashName* @param key*/public static Long delHashKV(String hashName,String key){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.hdel(hashName,key);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 存放hash表键值对* @param hashName* @param key* @param value*/public static Long setHashKV(String hashName,String key,String value){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.hset(hashName,key,value);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 删除键值对* @param k* @return*/public static Long delKV(String k){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.del(k);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 放键值对* 永久* @param k* @param v*/public static String setKV(String k, String v){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.set(k, v);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 放键值对** @param k* @param v*/public static String setKV(String k,int second, String v){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.setex(k,second, v);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 根据key取value** @param k* @return*/public static String getKV(String k){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.get(k);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}}import java.util.Set;public class RedisUtils {/*** 获取hash表中所有key* @param name* @return*/public static Set<String> getHashAllKey(String name){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.hkeys(name);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 从redis hash表中获取* @param hashName* @param key* @return*/public static String getHashKV(String hashName,String key){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.hget(hashName, key);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 删除hash表的键值对* @param hashName* @param key*/public static Long delHashKV(String hashName,String key){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.hdel(hashName,key);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 存放hash表键值对* @param hashName* @param key* @param value*/public static Long setHashKV(String hashName,String key,String value){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.hset(hashName,key,value);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 删除键值对* @param k* @return*/public static Long delKV(String k){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.del(k);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 放键值对* 永久* @param k* @param v*/public static String setKV(String k, String v){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.set(k, v);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 放键值对** @param k* @param v*/public static String setKV(String k,int second, String v){Jedis jedis = null;try {jedis = MyJedisPool.getWriteJedisObject();return jedis.setex(k,second, v);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}/*** 根据key取value** @param k* @return*/public static String getKV(String k){Jedis jedis = null;try {jedis = MyJedisPool.getReadJedisObject();return jedis.get(k);}catch (Exception e){e.printStackTrace();}finally {MyJedisPool.returnJedisOjbect(jedis);}return null;}}

转载:https://www.cnblogs.com/yanqin/p/8342836.html

推荐内容:
JAVA给图片添加水印
【原创】架构师必备,带你弄清混乱的JAVA日志体系!
JAVA日志的前世今生
Java数据结构和算法(十四)——堆
Java实现单链表的快速排序和归并排序
java面试常考题
聊聊Java 8 Lambda 表达式
Java序列化机制原理
Java入门篇(五)——字符串/String类
【JVM系列】一步步解析java执行内幕

Java Redis 连接池 Jedis 工具类,java基础面试笔试题相关推荐

  1. 分享18道Java基础面试笔试题

    转载自 分享18道Java基础面试笔试题(面试实拍) 1.你最常上的两个技术站和最常使用的两个app分別进什么?主要解决你什么需求? 2.请简述http协议中get请求和post请求的区别. 3.请简 ...

  2. java多线程系列:ThreadPoolExecutor源码分析,java基础面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  3. Druid 连接池 JDBCUtils 工具类的使用

    Druid工具介绍 它不仅仅是一个数据库连接池,它还包含一个ProxyDriver,一系列内置的JDBC组件库,一个SQL Parser. 支持所有JDBC兼容的数据库,包括Oracle.MySQL. ...

  4. JDBC连接池与工具类

    1.连接池概述 用池来管理Connection,这样可以重复使用Connection,有了池,所以我们就不用自己来创建Connection, 而是通过池来获取Connection对象,当使用完Conn ...

  5. DataSourceUtils(使用C3P0连接池的工具类)

    一.导入jar包(c3p0-0.9.1.2.jar) 2.添加配置文件(放在src下) 配置文件的名称:c3p0.properties 或者 c3p0-config.xml 放在src之下 c3p0. ...

  6. 连接池-DBCPUtils工具类(dbcp)

    一.合建properties文件 在src目录下创建一个名为"dbcpconfig.properties"的文件,里面的内容为: #连接设置 driverClassName=com ...

  7. 连接池-C3P0Utils工具类(c3p0)

    一.创建文件 在src目录下创建一个名为"c3p0-config.xml"的文件,里面的内容为: <?xml version="1.0" encoding ...

  8. Java集合框架之四大接口、常用实现类,java基础面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

  9. Java 基础面试题,java基础面试笔试题

    我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家. 扫描二维码或搜索下图红色VX号,加VX好友,拉你进[程序员面试学习交流群]免费领取.也欢迎各位一起 ...

最新文章

  1. 【一步步学小程序】1.创建项目以及TabBar
  2. flink报错:Error: Static methods in interface require -target:jvm-1.8 已解决
  3. 新建android项目导包,Cordova开发App入门(一)创建android项目
  4. codeforces1486 F. Pairs of Paths(倍增+树上数数)
  5. C++函数后置返回类型
  6. STM32网络之SMI接口
  7. 关于XML序列化与CultureInfo
  8. concurrentbag 删除_你知道吗?这样删除iPhone中的APP腾出的空间会更大
  9. 自己在inode客户端的大量问题(不断更新中)(2012-02-23 21:24 )
  10. 解决更新Win11后没有ie浏览器问题
  11. 微服务架构师的道、法、术
  12. 基于3DGIS的智慧“云”综合产业园区建设
  13. 怎样在图片上编辑文字?这几种方法可以进行简单的编辑
  14. java微信下载word文件怎么打开方式_微信打不开word文档的解决方法 如何打开word文档...
  15. centos系统 -官网下载mysql
  16. 太原今年实施一批大数据重大项目
  17. (6.6)【PC中数据隐藏】Linux中隐写:TrueCrypt创建隐藏卷、使用方法
  18. 【2022感恩节活动营销理念】跨境电商卖家必知 !
  19. 华为p10 内存测试软件,华为p10闪存门怎么回事 华为p10/P10Plus闪存怎么测试
  20. HyperAI超神经已加入群聊,思否 AIGC Hackathon 扩列

热门文章

  1. 自己用as3实现的以多边形等几何模型为基础的碰撞系统 - 例子A
  2. 【网络小说推荐】纨绔才子
  3. 计算机考试忘记备注班级了,2012年计算机二级Access第二十五套上机试题及答案详解...
  4. 常见web攻击方式与防御方法
  5. afl-fuzz技术白皮书
  6. Redis之缓存设计
  7. HBase读性能优化策略
  8. (220)FPGA内部组成LUT介绍
  9. (20)FPGA面试题时序设计的实质
  10. 一寸照纯红色底图片_高大上的图片精修,其实只需要学会这7个方面!