当前位置: 首页 > news >正文

深圳网站建设培训凡客建站官网登录

深圳网站建设培训,凡客建站官网登录,网站的字体颜色,2022年免费云服务器我是一个java开发者#xff0c;我的文章#xff0c;没有华丽的言辞#xff0c;没有666的版式#xff0c;这些都是我自己工作中用到的解决方案#xff0c;很多都是直接粘贴的源码#xff0c;在这里与君分享。如果喜欢这里文章可以关注我#xff0c;我回继续发的#xff…我是一个java开发者我的文章没有华丽的言辞没有666的版式这些都是我自己工作中用到的解决方案很多都是直接粘贴的源码在这里与君分享。如果喜欢这里文章可以关注我我回继续发的谢谢你。我们在使用springboot搭建微服务的时候在很多时候还是需要redis的高速缓存来缓存一些数据存储一些高频率访问的数据如果直接使用redis的话又比较麻烦在这里我们使用jedis来实现redis缓存来达到高效缓存的目的接下来让我们一起来使用jedis来实现redis缓存 1.在pom.xml文件中添加依赖 redis.clients jedis 2.8.22. 在springboot的配置文件中加入redis的配置信息#redis jedis配置# Redis数据库索引(默认为0)spring.redis.database0# Redis服务器地址spring.redis.host10.100.140.84# Redis服务器连接端口spring.redis.port6379# Redis服务器连接密码(默认为空)#spring.redis.password# 连接池最大连接数(使用负值表示没有限制)spring.redis.pool.max-active200# 连接池最大阻塞等待时间(使用负值表示没有限制)spring.redis.pool.max-wait-1# 连接池中的最大空闲连接spring.redis.pool.max-idle8# 连接池中的最小空闲连接spring.redis.pool.min-idle0# 连接超时时间(毫秒)spring.redis.timeout0#spring-session 使用spring.session.store-typenone3.创建jedis配置文件配置文件的作用是在项目启动的时候将jedis注入接着我们就可以在其他类中获取到JedisPool类的信息Configurationpublic class JedisConfig extends CachingConfigurerSupport{ private Logger logger LoggerFactory.getLogger(JedisConfig.class); /** * SpringSession 需要注意的就是redis需要2.8以上版本然后开启事件通知在redis配置文件里面加上 * notify-keyspace-events Ex * Keyspace notifications功能默认是关闭的(默认地Keyspace 时间通知功能是禁用的因为它或多或少会使用一些CPU的资源)。 * 或是使用如下命令 * redis-cli config set notify-keyspace-events Egx * 如果你的Redis不是你自己维护的比如你是使用阿里云的Redis数据库你不能够更改它的配置那么可以使用如下方法在applicationContext.xml中配置 * * return */ Value(${spring.redis.host}) private String host; Value(${spring.redis.port}) private int port; Value(${spring.redis.timeout}) private int timeout; Value(${spring.redis.pool.max-active}) private int maxActive; Value(${spring.redis.pool.max-idle}) private int maxIdle; Value(${spring.redis.pool.min-idle}) private int minIdle; Value(${spring.redis.pool.max-wait}) private long maxWaitMillis; Bean public JedisPool redisPoolFactory(){ JedisPoolConfig jedisPoolConfig new JedisPoolConfig(); jedisPoolConfig.setMaxIdle(maxIdle); jedisPoolConfig.setMaxWaitMillis(maxWaitMillis); jedisPoolConfig.setMaxTotal(maxActive); jedisPoolConfig.setMinIdle(minIdle); JedisPool jedisPool new JedisPool(jedisPoolConfig,host,port,timeout,null); logger.info(JedisPool注入成功); logger.info(redis地址 host : port); return jedisPool; }}接下来我们启动项目gogogoJedis注入成功了 然后我们可以定义一个工具类用于对redis进行各种操作这里我们通过Autowired将JedisPool注入到工具类中其他两个是命名、序列化的类这里我们列举一下平常最常用的几个方法//给某个key设值public void set(String key, Object value) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); byte[] valueBytes serializer.serializeValue(value); client.set(keyBytes, valueBytes); } finally { returnJedis(client); } }//根据key获取value public Object get(String key) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); byte[] valueBytes client.get(keyBytes); return serializer.deserializeValue(valueBytes); } finally { returnJedis(client); } }//根据键值获取value public Object hashGet(String key, String field) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); byte[] fieldBytes serializer.serializeKey(field); byte[] valueBytes client.hget(keyBytes, fieldBytes); return serializer.deserializeValue(valueBytes); } finally { returnJedis(client); } } public void hashSet(String key, String field, Object value) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); byte[] fieldBytes serializer.serializeKey(field); byte[] valueBytes serializer.serializeValue(value); client.hset(keyBytes, fieldBytes, valueBytes); } finally { returnJedis(client); } }public Map hashAllGet(String key) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); Map map client.hgetAll(keyBytes); Map valueMap Maps.newHashMap(); Set valueSet map.entrySet(); for (Map.Entry entry : valueSet) { valueMap.put(serializer.deserializeKey(entry.getKey()), serializer.deserializeValue(entry.getValue())); } return valueMap; } finally { returnJedis(client); } }//判断key是否存在 public boolean existKey(String key) { Jedis client getJedis(); try { byte[] keyBytes serializer.serializeKey(keyNamingPolicy.getKeyName(key)); return client.exists(keyBytes); } finally { returnJedis(client); } }在该项目中我们发送短信验证码后会将验证码存在redis中去然后校验的时候会判断用户输入的验证码和缓存中的验证码是否一致达到目的
http://www.sadfv.cn/news/202043/

相关文章:

  • 如何做网站搬家怎样建设一个好的企业网站
  • 推广网站怎么做模板wordpress ckeditor 中文字体
  • 网站重构罗永浩做的网站
  • 响应式布局网站案例网站项目设计具体方案
  • 网站开发结语怎么联系网站开发团队
  • 广东建设厅的网站查询建立网站的阶段
  • 西安网站自然排名优化工业软件开发前景
  • 学ps做兼职的网站有哪些it运维前景怎么样
  • 上海专业网站建设价格福建外贸网站
  • 建设好的网站怎么分享成华区建设局门户网站
  • 装修设计的网站网上竞价
  • 网站无法连接mysql龙岩网站建设论坛
  • 淮安那家公司做网站WordPress需要编程知识吗
  • 杭州投资公司自适应网站小程序开发公司前十名
  • 专业东莞网站制作公司深圳市建设交易网站
  • 做期货应该看的网站WordPress购物按钮
  • 建建设网站wordpress侧边栏在哪
  • 投诉举报网站 建设方案推荐微网站建设
  • 集团网站建设案例北京发布最新消息今天
  • 性价比最高网站建设价格网站开发应用技术专业
  • 电商网站开发多少钱网站制作论文文献综述
  • 电子科技学校网站建设wordpress积分等级
  • 揭阳城乡建设局网站idc分销系统
  • c2c商城网站建设二次开发电子商务交易平台
  • 天津自动网站建设调试付第三期网站建设费的账务处理
  • 网站开发工程师 北大青鸟小程序定制开发外包风险
  • 网站建设基本流程价格网站设计制作的服务好不好
  • 祥云网站建设公司 概况网站部分乱码
  • 视频解析网站建设提供给他人做视频解析的网站源码
  • 网站开发产品描述网页制作教程视频下载