根据书籍《redis设计与实现》总结。一、简单动态字符串在redis数据库里面,包含字符串值的键值对在底层都是由SDS实现的。1、SDS数据结构struct sdshdr { //记录buf数组中已使用的数量 //等于SDS所保存字符串的长度 int len; //记录buf数组中未使用字节的数量 int free;
Redis基础(上)Redis是非关系型数据库。NoSql的优势:易拓展,大数据、高性能,灵活的数据类型。 Redis:Remote Dictionary Server 远程字典服务 默认端口号6379需要的Linux命令1.ifconfig查看IP地址 查找inet后面对应的IP地址 是sercureCrt客户端连接虚拟机地址使用的 2.ll查看当前目录下的所有文件 3.cd = change
redis是单线程的,他提供了一个单线程的增方法increment供我们使用。现在有一个业务需求,id需要增生成,且生成速度要求一秒一千以上。废话不多说,直接上代码public class IncrIdUtils { private final String REDIS_KEY_TASK_ID = "AUTO_TASK_ID"; private final String REDIS
转载 2023-06-28 16:32:49
75阅读
@Autowired private StringRedisTemplate redisTemplate;public String createAutoID(String key) { //加上时间戳 如果不需要 String datetime = new SimpleDateFormat("yyyyMMdd").format(new Date()); //查询 key
转载 2023-05-25 19:53:09
103阅读
需求描述:主键的格式为 业务序列+当前日期+从00001开始自//redis实现按业务+日期+ //输出结果为:biz2020021800001、biz2020021800002、biz2020021800003的形式 @Test public void testJedis(){ SimpleDateFormat sdf=new SimpleDateFormat("yyyyMM
转载 2023-07-08 01:45:51
61阅读
在面试中,大家应该经历过如下场景面试官:"用过mysql吧,你们是用主键还是UUID?"你:"用的是主键"面试官:"为什么是主键?"你:"因为采用主键,数据在物理结构上是顺序存储,性能最好,blabla…"面试官:"那主键达到最大值了,用完了怎么办?"你:"what,没复习啊!!"    (然后,你就可以回去等通知了!)这个问题是一个粉丝给我提的,我觉得挺有
## 实现MySQL自定义函数的流程 ### 甘特图 ```mermaid gantt dateFormat YYYY-MM-DD title 实现MySQL自定义函数的流程 section 准备工作 准备数据库 :done, 2022-10-01, 1d 创建测试表 :done, after 准备数据库, 1d s
原创 2023-10-27 06:30:55
44阅读
此再见非彼再见,在之前的一篇文章中,学习了 Redis 的安装和基本的使用,在边实习边学习的过程中,加深了对其的理解,所以在这里总结一哈。 文章目录回顾 Redis键 Key 的管理五种数据类型StringHashJava 操作 RedisListSetZSetRedis 发布订阅Redis 多数据库Redis 事务Redis 数据淘汰Redis 持久化Redis 缓存与数据库一致性实时同步异步队
    前言前面我们说到了在SpringBoot中自定义Enable模块,那么如何在SpringBoot中如何自定义一个Starter模块呢?要想自定义一个Starter模块,就需要理解自动装配的原理。首先,想想我们自动装配涉及到哪些关键的类或者属性文件?无非就是配置类+spring.factories属性文件。自定义starter的条件根据条件检查classp
自动装配的实现自定义Starter组件1.自动装配的实现 1.1 定义要自动装配的类 1.2 创建实现ImportSelector接口的类,重写selectImports方法,该方法返回的类名会被自动装配到IoC中 1.3 自定义一个注解 1.4 从容器中获取Bean 1.5 简单看下Spring Boot启动类自动装配的实现创建两个类: public class FirstClass{} pu
Spring Boot的四大特性:Starter添加项目依赖bean的自动化配置Spring Boot CLI与Groovy的高效配合Spring Boot Actuator本文讲解如何创建一个自定义Starter。1.创建maven工程(maven-archetype-quickstart):注意artifactId的命名规则,Spring官方Starter通常命名为spring-boot-st
转载 2024-02-22 11:06:53
26阅读
#### 实现自定义字段的流程 为了实现"Java实现自定义字段"的功能,可以按照以下步骤进行操作: | 步骤 | 描述 | | ---- | ---- | | 1 | 创建一个类,并声明一个字段用于保存的值 | | 2 | 创建一个方法用于获取自的值 | | 3 | 创建一个方法用于增加的值 | | 4 | 在需要使用字段的地方,调用相应的方法来获取和增加值 | 下面
原创 2023-10-31 10:41:06
115阅读
SpringBoot集成Spring Security(4)——自定义表单登录1.添加验证码功能1.1 验证码程序  从网上拉取一段建立验证码的程序:package cn.it.test.Servlet; import javax.imageio.ImageIO; import javax.servlet.ServletException; import javax.servlet.Servle
一、JPQL自定义查询语句 1.含义 1、JAVA持久性查询语句(JPQL)是一种面向对象的查询语言, 将SQL语法和简单查询予以绑定进行操作 2、SQL面向的是表和字段访问操作数据 3、JPQL完全面向对象,通过类名和属性访问操作数据库,而不是表名和表的属性 4、JPQL所提供的查询语法主要分为三类 1)select查询语句
Spring中自定义注解的解析过程-学习在学习spring源码的过程中,最好奇的一件事就是Sprint的注解是怎么被读取到的,又是怎么进行解析的。然后又是怎么将注解的内容注入到spring容器中的。带着这个好奇心,写了一个小的Spring的自定义注解的demo,记录一下,怕自己忘记!在spring中,对于注解的解析,有一个非常重要的类就是ConfigurationClassPostProcesso
转载 2024-06-20 08:50:42
13阅读
请求参数的绑定1. 请求参数的绑定说明  1. 绑定机制    1. 表单提交的数据都是k=v格式的 username=haha&password=123    2. SpringMVC的参数绑定过程是把表单提交的请求参数,作为控制器中方法的参数进行绑定的    3. 要求:提交表单的name和参数的名称是相同的   2. 支持的数据类型    1. 基本数据类型和字符串类型    2.
hive自定义函数1 自定义函数1.1 为什么需要自定义函数 hive的内置函数满足不了所有的业务需求。 hive提供很多的模块可以自定义功能,比如:自定义函数、serde、输入输出格式等。 1.2 常见自定义函数有哪些UDF:用户自定义函数,user defined function。一对一的输入输出。(最常用的)。UDTF:用户自定义表生成函数。user defined table-gen
Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。
转载 2023-07-10 10:40:10
0阅读
今天博客主讲redis持久化以及redis主从复制(读写分离)和哨兵理论+Docker下redis的主从配置实操,希望可以给大家带来一些帮助。redis持久化Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以R
转载 2023-06-29 11:46:59
86阅读
Springboot自定义MVC组件前言:讲自定义组件前先要明白每个组件是干什么的,在项目运行中起着什么作用。这样我们知道在什么时候应该怎么样去配置组件,所以我们需要先来了解SpringMVC的运行流程SpringMVCspringMVC的核心在于其流程,它是一种 Servlet 的技术,它提供了核心控制器 DispatcherServlet 和相关的组件,制定了松散的结构;为了让大家对Sprin
  • 1
  • 2
  • 3
  • 4
  • 5