01 2022 档案
摘要:1 前言 Redis3.2中增加了对GEO类型的支持。GEO,Geospatial,地理信息的缩写。该类型,就是元素的二维坐标,在地图上是经纬度。redis基于该类型,提供经纬度设置,查询,范围查询。距离查询,经纬度hash等常见操作。 2 操作命令 geoadd <key><longitude><
阅读全文
摘要:1 前言 在平时开发中我们经常会用到对某个同样的数据进行去重,在mysql中,使用distinct count计算不重复个数,在redis中,使用其提供的hash,set,bitmaps等数据结构来处理。 但是当数据量较大时,导致其占用的空间越来越大,对于非常大的数据并不适用,所以可以通过降低一定的
阅读全文
摘要:目录 1 前言 2 操作命令 3 Bitmap和Set对比 1 前言 Redis提供了Bitmaps这个“数据类型”,可以实现对应的位操作: 1)Bitmaps本身不是一种数据类型,实际上它就是字符串(key-value),但是它可以对字符串进行位操作 2)Bitmaps单独提供了一套命令,所以
阅读全文
摘要:目录 1 前言 2 为什么要去定义一个初始化的值 3 如何确定一个初始化的值 1 前言 HashMap可以说是我们在开发中最常用的一个集合了,当我们在代码中有 Map<Object, Object> map = new HashMap<>(5); 看到了如下代码,第一反应是什么呢? 此map只能放入
阅读全文
摘要:1 简单介绍 Redis发布订阅是一种消息通信模式:发送者发送消息,订阅者接收消息 2 发布订阅命令行实现 步骤一:打开一个客户端订阅一个channell SUBSCRIBE channel1 步骤二:打开另外一个客户端,给channell发布消息hello publish channel1 hel
阅读全文
摘要:发生场景: 之前在进行项目打包时,在打包测试类时出错了,所以就想跳过测试环境进行打包。 方式一:修改pom文件 <build> <plugins> <!--打包时跳过测试--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifac
阅读全文
摘要:1 Redis配置文件 配置大小单位:定义了一些基本的度量单位,只支持bytes,不支持bit,大小写不敏感 # # 1k => 1000 bytes # 1kb => 1024 bytes # 1m => 1000000 bytes # 1mb => 1024*1024 bytes # 1g =>
阅读全文
摘要:目录 1 前言 2 普通for循环中return,continue,break的用法 3 Java8中foreach()的用法 4 如何退出Java8中的foreach()循环 4.1 anyMatch(Predicate p) 1 前言 在我们平时开发中,会发现Java8的foreach()循环使
阅读全文
摘要:1 varchar(M)和数值类型tinyint(M) 的区别 字符串类型:varchar(M)而言,M是字段中可以存储的最大字符串,也就是说字段长度。根据设置,当你插入的数值超过字段设置的长度时,很有可能会收到错误提示,如果没有收到提示,插入的数据也有可能被自动的截断以适应该字段的预定义长度。所有
阅读全文
摘要:目录 1 简单介绍 2 常用命令 3. 数据结构 1 简单介绍 Redis有序集合zset与普通集合set非常相似,是一个没有重复元素的字符串集合。不同之处是有序集合的每个成员变量都关联了一个评分(score),这个评分被用来按照从最高分的方式排序集合中的成员。集合中的成员是唯一的,但是评分是可以重
阅读全文
摘要:目录 1 简单介绍 2 常用命令 3 数据结构 1 简单介绍 Redis hash是一个键值对集合 Redis hash 是一个string类型的field和value的映射表,hash特别适合存储对象,类似于Java里面的Map<String,Object> 如果我们想将一个对象存进redis中,
阅读全文
摘要:目录 1 简单介绍 2 常用命令 3 数据结构 1 简单介绍 Redis set对外提供的功能与list是一个列表的功能,特殊之处在于set是可以自动去重的,当你需要存储一个列表数据,又不需要出现重复数据时,set是一个很好的选择,并且set提供了判断某个成员是否在一个set集合内的重要接口,这个也
阅读全文
摘要:目录 1 简单介绍 2 常用命令 3 数据结构 1 简单介绍 Redis列表是简单的字符串列表,按照插入顺序排序,你可以添加一个元素到列表的头部(左边)或者尾部(右边) 它的底层是个双向列表,对于两端的操作性很高,通过索引下标操作中间的节点性能会较差。 2 常用命令 lpush/rpush <key
阅读全文
摘要:1 Redis字符串 String是Redis最基本的数据类型,一个key对应一个value。 String类型是二进制安全的,说明Redis的string可以包含任何数据,比如jpg图片或者序列化的对象 String类型是Redis最基本的数据类型,一个Redis中字符串value最多可以是512
阅读全文
摘要:目录 1 前言 2 日志框架和日志门面 2.1 日志框架: 2.2 日志门面: 3 springBoot中日志使用 3.1 springBoot中的日志设计 3.2 springBoot中的日志使用 4 日志桥接 1 前言 相信大家在平时的开发中都会经常会通过打日志的方式来排查和解决问题。用到的最多
阅读全文
摘要:目录 1 前言 2 log4j2 2.1 log4j2简单使用 2.2 log4j2的异步日志 2.3 异步日志实现方式 2.3.1 AsyncAppender 2.3.2 AsyncLogger 2.4 log4j的无垃圾记录 1 前言 Apache Log4j2是对Log4j的升级版,参考了lo
阅读全文
摘要:目录 1 logback大致介绍 2 使用logback配置文件输出日志 2.1 将日志输出到控制台 2.2 将日志输出到控制台和文件 2.3 将日志以html的文件进行输出 2.4 将日志文件进行压缩拆分 2.5 异步日志 1 logback大致介绍 Logback是由log4j创始人设计的另外一
阅读全文
摘要:mysql中如何根据表名找到库名: SELECT table_schema FROM information_schema.TABLES WHERE table_name = '表名'; 添加字段: ALTER TABLE `库名`.`表名`ADD COLUMN `字段名称` TINYINT(1)
阅读全文
摘要:目录 1 前言 2 简单介绍 3 代码演示 1 前言 JCL是Apache提供的一个通用日志API。它是为所有“Java日志实现”提供一个统一的接口,它自身也提供一个日志的实现(SimpleLog),但是功能非常脆弱。但是我们一般都使用不同的日志实现工具:Log4j,jdk自带的日志(JUL) JC
阅读全文
摘要:目录 1 前言 2 Slf4j 2.1 使用slf4j日志的绑定流程 2.2 日志框架绑定入门 2.3 桥接旧的日志框架 1 前言 在上篇我们了解了JCL这样一个日志门面技术,不过JCL因为在底层已经将它可以配置的日志框架全部都定下来了。无法在衔接其他的日志框架,那么它就在2014年的时候被抛弃了。
阅读全文
摘要:目录 1 Log4j 介绍 2 Log4j组件 3 代码示例 3.1 简单入门 3.2 输出日志到文件 3.2.1 按照日志大小将文件进行分割: 3.2.2 按照日期将文件进行分割: 3.3 将日志信息输出到数据库 1 Log4j 介绍 Log4j是Apache是apache旗下的一款开源的日志框架
阅读全文
摘要:目录 1 JUL简单介绍 2 JUL架构介绍 3 代码实践 3.1 日志输出 3.2 Logger对象父子关系 3.3 日志配置文件 1 JUL简单介绍 jul全称java util Logging是Java原生的日志框架,使用时不需要引入第三方类库,性对于其他日志框架使用方便,学习简单,能够在小型
阅读全文
摘要:平时在sql优化过程中,我们都会给字段建立适当的索引以此来提升查询速度。那么建立索引既然能够提升查询速度,为什么不将所有的字段全部都建立索引呢? 因为我们mysql数据库对应的不仅仅只有select,还有update,insert,delete. 对于select: 适当的索引的确能够提升查询速度
阅读全文
摘要:平时在我们使用数据库时,可以发现整形的存储类型包括int和integer这两种,那么它们中间有什么区别呢? 从图中可以看出,int和integr并没有什么区别,而且在数据库表结构设计时,无论是int还是integer都可以存储Null。
阅读全文
摘要:目录 1 前言: 2 实现方法类比 3 桥接模式 3.1 桥接模式简单介绍 3.2 代码实现 4 桥接模式优缺点 1 前言: 在我们平时生活中,会有很多按照不同功能来进行区分的东西,比如电脑(华为电脑,苹果电脑),但是电脑又有许多种分类(笔记本,台式、平板)。这两种两两组合,就可以组
阅读全文
摘要:目录 1 门面模式介绍 2. 代码示例 1 门面模式介绍 1.1 门面模式的定义 通过多个复杂的子系统提供一个一致的接口,而使这些子系统更加更加容易被访问的模式。 比如向我们医院中的导诊台和以前电话的接线员这两个场景,她们体现了Facade模式统一访问接口的特性,但是却不能体现Facade模式,因为
阅读全文