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

科技打破垄断全球的霸权唐山seo优化

科技打破垄断全球的霸权,唐山seo优化,91url wordpress,做国际网站怎么做大家好 , 我是苏麟 , 今天带来强大的Redis . REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。 Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选…

大家好 , 我是苏麟 , 今天带来强大的Redis .

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

官方网站 :  雷迪斯 (redis.io)

好用的可视化工具 :  Quickredis 

 下载地址 : QuickRedis 发行版 - Gitee.com

 好用的可视化工具 :  RedisDesktopManager

官方网站 :  https://redisdesktop.com/download

 Spring Data Redis 的使用方式

 

开始使用 :

引入依赖

        <!--springbot 整合 redis--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId></dependency>

Redis配置 端口号默认6379 库默认0

  #redis 配置redis:port: 6379database: 0 host: localhost

序列化

/*** 序列化 让JDK原生序列化转成JSON*/
@Configuration
public class RedisConfig {@Bean@SuppressWarnings("all")public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {RedisTemplate<String, Object> objectObjectRedisTemplate = new RedisTemplate<>();objectObjectRedisTemplate.setConnectionFactory(redisConnectionFactory);//设置KEY 序列化使用 String 字符串objectObjectRedisTemplate.setKeySerializer(RedisSerializer.string());objectObjectRedisTemplate.setHashKeySerializer(RedisSerializer.string());GenericJackson2JsonRedisSerializer jsonRedisSerializer = new GenericJackson2JsonRedisSerializer();//设置Value 序列化 格式objectObjectRedisTemplate.setValueSerializer(jsonRedisSerializer);objectObjectRedisTemplate.setHashValueSerializer(jsonRedisSerializer);return objectObjectRedisTemplate;}
}

操作


/*** 目标 : 在JAVA中操作redis   spring date redis* spring date redis 中提供了一个高度封装了的一个类 RedisTemple 针对jedis客户端api进行了分类封装,将同一种类型封装成Operation接口* ValueOperation : 简单K-V操作* SetOperation : set类型数据操作* ZSetOperation : zset类型数据操作* HashOperation : Hash类型数据操作* ListOperation : List类型数据操作*/@SpringBootTest
class ItslRedisApplicationTests {@AutowiredRedisTemplate redisTemplate;/*** 目标 : 对5中不同类型数据进行操作* opsForValue* opsForHash* opsForList* opsForSet* opsForZSet*//*** 操作String类型数据*/@Testvoid testString() {//set操作redisTemplate.opsForValue().set("sl", "sl");//get操作System.out.println(redisTemplate.opsForValue().get("sl"));//setex操作 命令为指定的 key 设置值及其过期时间。//如果 key 已经存在, SETEX 命令将会替换旧的值。redisTemplate.opsForValue().set("ty", "sl", 100, TimeUnit.SECONDS);//setnx操作  命令在指定的 key 不存在时,为 key 设置指定的值。Boolean aBoolean = redisTemplate.opsForValue().setIfAbsent("ty", "ty");System.out.println(aBoolean);}/*** 目标 : 操作Hash数据类型*/@Testvoid testHash() {HashOperations hashOperations = redisTemplate.opsForHash();//存值hashOperations.put("002", "name", "sl");hashOperations.put("002", "age", 20);//取值System.out.println(hashOperations.get("002", "age"));System.out.println(hashOperations.get("002", "name"));//获得hash结构中的所有字段Set keys = hashOperations.keys("002");for (Object key : keys) {System.out.println(key);}//获得hash结构中的所有值List values = hashOperations.values("002");for (Object value : values) {System.out.println(value);}}/*** 目标 : 操作List数据类型*/@Testvoid testList() {ListOperations listOperations = redisTemplate.opsForList();//存值listOperations.leftPush("ykList", "a");listOperations.leftPushAll("ykList", "s", "b", "s", "t");//取值List ykList = listOperations.range("ykList", 0, -1);for (Object o : ykList) {System.out.println(o);}//获取长度int size = ykList.size();for (int i = 0; i < size; i++) {//出队Object ykList1 = listOperations.rightPop("ykList");System.out.println("出队的是 : " + ykList1);}}/*** 目标 : 操作Set数据类型*/@Testvoid testSet() {SetOperations setOperations = redisTemplate.opsForSet();//存值setOperations.add("ty", "a", "b", "v", "b");//取值Set ty = setOperations.members("ty");for (Object o : ty) {System.out.println("删除前 : " + o);}//删除成员setOperations.remove("ty", "a");//取值Set tys = setOperations.members("ty");for (Object o : tys) {System.out.println("删除后  : " + o);}}/*** 目标 : 操作ZSet数据类型*/@Testvoid testZSet() {ZSetOperations zSetOperations = redisTemplate.opsForZSet();//存值zSetOperations.add("myZset", "a", 10.1);zSetOperations.add("myZset", "b", 11.1);zSetOperations.add("myZset", "c", 12.1);zSetOperations.add("myZset", "d", 13.1);//取值Set myZset = zSetOperations.range("myZset", 0, -1);for (Object o : myZset) {System.out.println("删除前 : " + o);}//修改分数zSetOperations.incrementScore("myZset", "d", 25.4);//删除成员zSetOperations.remove("myZset", "a", "b");//取值Set myZsets = zSetOperations.range("myZset", 0, -1);for (Object os : myZsets) {System.out.println("删除后  : " + os);}}/*** 目标 : 通用操作*/@Testvoid testCommon() {//获取Redis中所有的keySet<String> keys = redisTemplate.keys("*");for (String key : keys) {System.out.println(key);}//判断某个key是否存在Boolean itcast = redisTemplate.hasKey("key");System.out.println(itcast);//删除指定keyredisTemplate.delete("key");//获取指定key对应的value的数据类型DataType dataType = redisTemplate.type("001");System.out.println(dataType.name());}
}

使用小技巧 : 

登录态自动存储Redis中

开发中一个小用处 在分布式登录的时候用Seesion保存登录态 实现共享存储

第一步 :

引入依赖

        <!--spring-session 整合 redis --><dependency><groupId>org.springframework.session</groupId><artifactId>spring-session-data-redis</artifactId></dependency>

第二步 : 

在yml中配置

spring:session:#存储时间 86400 二个月timeout: 86400#自动存储到reidsstore-type: redis

这样就完成自动存储到Redis中!

这期就到这里下期再见 !

拜拜!

http://www.hkea.cn/news/795669/

相关文章:

  • 怎么选择无锡网站建设虚拟主机搭建网站
  • 做原油期货关注什么网站搜索引擎优化是做什么
  • 微信小程序怎么制作游戏安卓优化清理大师
  • 胶南做网站初学者做电商怎么入手
  • 网站为什么要维护佛山网络营销推广
  • 国企网站建设报告怎么建造自己的网站
  • 免费做司考真题的网站余姚网站如何进行优化
  • 如何网站开发1688网站
  • 丽水专业网站建设价格青岛网站优化
  • 网站开发专业培训学校百度推广登录官网入口
  • 贵阳做网站公司网站热度查询
  • 做课件最好的素材网站考拉seo
  • 网站建设玖首选金手指seo网站优化收藏
  • 台州卓远做网站好不好广州seo教程
  • dz网站数据备份bt磁力猪
  • github 可以做网站吗360seo
  • 杭州 企业门户网站建设爱链
  • dj那个网站做的好长沙公司网络营销推广
  • 设计师培训招生视频黑帽seo联系方式
  • 做网上贸易哪个网站好西宁网站seo
  • 电子烟网站建设杯子软文营销300字
  • 广州企业网站制作怎么做营销推广
  • 网站建设服务器在香港郑州网站建设专业乐云seo
  • 河北建设工程交易信息网海口关键词优化报价
  • 全国网站建设公司有多少家微信朋友圈广告投放收费标准
  • 免费做网站公司黑帽seo排名技术
  • apk连接wordpress上海seo
  • 企业建网站租用服务器好还是买一个好石家庄网站关键词推广
  • wordpress文件解析外贸网站优化
  • 建设工程竣工备案网站百度保障中心人工电话