- 博客(67)
- 问答 (1)
- 收藏
- 关注
原创 Java—Arrays api
2. 如果要查找的元素存在,则返回查找到的元素的索引;如果要查找的元素不存在,则返回 (-插入点)-1。如果新数组的长度 > 旧数组的长度,会补上默认初始值。1. 二分查找的前提:数组中的元素必须是升序的;如果新数组的长度 < 旧数组的长度,会部分拷贝;如果新数组的长度 = 旧数组的长度,会完全拷贝;方法的底层会根据第二个参数来创建新的数组,对于数据拷贝的范围包头不包围,包左不包右。参数二:新数组的长度。
2024-08-21 14:40:45
522
原创 Java常用API
如果BigInteger表示的数字没有超出long的范围,可以用静态方法获取。如果BigInteger表示的超出long的范围,可以用构造方法获取。对象一旦创建,BigInteger内部记录的值不能发生改变。只要进行计算都会产生一个新的BigInteger对象。
2024-08-15 15:51:13
423
原创 SQL—数据库与表操作
案例:为emp表添加一个新的字段,昵称为"nickname",类型为varchar(20)案例:将emp表的nickname字段修改为username,类型为varchar(30)SQL语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。案例:创建一个itcast数据库,使用数据库默认的字符集。案例:创建一个itheima数据库,并且指定字符集。案例:将emp表的表名修改为 employee。案例:创建表结构如下。
2024-07-30 17:54:33
539
原创 Redis实战—达人探店、好友关注
如下图所示,举例来说,从t1时刻开始,我们获取第一页数据,例如10到6的笔记,然后记录下当前页的最后一条笔记,即6。第二次查询时,我们将score最大值参数设置为上一次查询结果的最小时间戳,即6,由于偏移量为0,因此查询会从第一个score值等于6的数据开始查询,得到的结果是m2、m3、m6,此时查询到的部分数据与第一次查询得到的数据重复。
2024-07-12 19:39:26
649
原创 Redis实战—分布式锁(setnx、redisson)
本文详细介绍了Redis分布式锁的实现,同时对 “分布式锁误删” 与 “分布式锁原子性” 问题进行了讨论和解决。
2024-06-22 16:54:28
2175
原创 Redis实战—Redis缓存
1. 缓存就是数据交换的缓冲区(称作Cache),是存贮数据的临时地方,一般读写性能较高。2. 缓存数据存储于代码中,而代码运行在内存中,内存的读写性能远高于磁盘,因此缓存可以大大降低用户访问并发量带来的服务器读写压力。3. 实际开发过程中,企业的数据量少则几十万,多则几千万,这么大数据量,如果没有缓存来作为"避震器",系统是几乎撑不住的,所以企业会大量运用到缓存技术。但是缓存也会增加代码复杂度和运营的成本:降低后端负载、提高读写效率,降低响应时间。
2024-03-06 20:36:15
1201
原创 微服务—RabbitMQ高级(业务在各方面的可靠性)
本文主要介绍了如何通过确保生产者、消息队列和消费者的可靠性,来保障支付服务和交易服务之间订单状态的一致性。
2024-02-20 09:57:08
1602
原创 微服务—RestClient操作(文档各类查询、搜索结果处理)
在elasticsearch提供的API中,与elasticsearch一切交互都封装在一个名为RestHighLevelClient的类中,必须先完成这个对象的初始化,建立与elasticsearch的连接。SearchHits:通过response.getHits()获取,就是JSON中的最外层的hits,代表命中的结果。可以看到,API与其它查询的差别同样是在查询条件的构建,QueryBuilders,结果解析等其他代码完全不变。hits:搜索结果的文档数组,其中的每个文档都是一个json对象。
2024-02-18 14:40:17
1226
原创 微服务—DSL语法(文档各类查询、搜索结果处理)
查询的DSL是一个大的JSON对象,包含下列属性:query:查询条件from和size:分页条件sort:排序条件highlight:高亮条件。
2024-02-18 09:53:28
1124
原创 微服务—DSL基础语法与RestClient操作
在elasticsearch提供的API中,与elasticsearch一切交互都封装在一个名为RestHighLevelClient的类中,必须先完成这个对象的初始化,建立与elasticsearch的连接。字符串:text(可分词的文本)、keyword(精确值,例如:品牌、国家、ip地址、分词无意义的值)全量修改是覆盖原来的文档,其本质是:先根据指定的id删除文档,再新增一个相同id的文档。如果根据id删除时,id不存在,第二步的新增也会执行,也就从修改变成了新增操作了。
2024-02-17 10:49:27
1231
1
原创 微服务—RabbitMQ基础(介绍、下载安装与使用)
AMQP(Advanced Message Queuing Protocol)是用于在应用程序或之间传递业务消息的开放标准。该协议与语言和平台无关,更符合微服务中独立性的要求。Spring AMQP是基于AMQP协议定义的一套API规范,提供了模板来发送和接收消息。包含两部分,其中spring-amqp是基础抽象spring-rabbit是底层的默认实现。
2024-02-01 21:29:41
1318
原创 微服务—Docker
文章章节:初识Docker、Docker与虚拟机的区别、镜像与容器、Docker架构、常见Docker命令、镜像命令、容器命令数据卷挂载直接挂载
2024-01-31 10:25:47
1322
原创 MybatisPlus—利用Lambda方法,简化复杂/动态sql语句编写
通过IService中提供的Lambda方法,简化复杂/动态sql语句的编写
2024-01-24 17:52:16
1130
空空如也
发生访问冲突时应该怎么解决
2021-08-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人