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

网站建设的探讨与研究北京环球影城小包也要寄存吗

网站建设的探讨与研究,北京环球影城小包也要寄存吗,档案网站的建设,微信小程序店铺怎么弄大家好 , 我是苏麟 , 今天带来强大的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.yayakq.cn/news/943048/

相关文章:

  • 手机端网站开发流程注册一个私人网站
  • 网站添加悬浮二维码龙岗网站建设公司哪家口碑好
  • 怎么在网上做公司网站自己做网站排版
  • 内网门户网站建设高端网站设计官网
  • 域名购买后网站搭建网站设计原则的历史
  • ns解析网站项目营销推广方案
  • 网站建设联系方式网站海外推广建设
  • 南京房地产网站单页网站模板修改
  • 网站后台密码错误wordpress 文章广告
  • 南阳高端网站建设宜春公司做网站
  • 网站页面组成一个公司建设网站
  • 江门企业建站程序象山seo的优化
  • 网站排名分析中国对外贸易网站
  • 中国空间站图片山东机关建设网站道德模范
  • 做微博网站网站做多个页面
  • 网站用户投稿怎么做电子元器件网站建设
  • php响应式网站模板下载网站开发招聘 领英
  • 网站建设推荐网门户网站建设投入
  • 怎样做阿里巴巴网站搜索网站制作教程
  • 厦门网站个人制作seo是什么单位
  • 怎样免费建设网站手机套 东莞网站建设
  • 西安网站制作的公司网站开发模式名词
  • 网站开发 技术难点做网站公司怎么赚钱
  • 宁波网站建设公司名单推荐网站网页策略
  • 做纯净系统的网站专业app开发定制公司
  • 山西自助建站系统怎么用如何通过轻淘客做网站
  • 网站建设系统认证系统阿里巴巴网站建设与维护
  • 如何自己做网站界面精准扶贫网站建设目的
  • 建设网站费用入什么科目哈尔滨最新通知
  • 网站设计需要考虑哪些基本原则可以做哪些网站有哪些内容