- 博客(1520)
- 资源 (2)
- 收藏
- 关注
原创 使用maven-helper插件解决jar包冲突案例3【经典版】
首先,解决idea中jar包冲突,使用maven的插件:maven helper插件,它能够给我们罗列出来同一个jar包的不同版本,以及他们的来源,但是对不同jar包中同名的类没有办法。
2024-01-30 23:40:50
8204
原创 设计模式 2 代理模式-静态或者动态
以房东,中介,买卖房子为例子,说明什么是代理,说白就是房东卖房子因为一些利益,或者怕麻烦,没有经商头脑等各种原因,不能和客户直接进行接触买卖房子,这时候需要中介代理其进行卖房子。......
2022-07-17 18:52:34
570
原创 linux实战项目经验得到的常用linux命令(-)
一.Linux系统的概述1.1 linux系统概述Unix是一个强大的多用户、多任务操作系统。1.2 linux的目录结构root管理员的home目录是root,其他用户的home目录是在home目录下1.3 linux的学习地址以下基本知识点是用来学习工作。https://www.orchome.com/100大神的学习文章二 .使用最频繁最高常用命令2.1 查看tomcat的进程号和端口号1.获得进程号ps -ef|grep tomcat...
2021-07-03 07:58:41
647
2
原创 个人能力与目标-顶级程序员
顶级程序员:1.基础知识要扎实,各种算法,数学功底,各种底层原理要通。2.业务项目要出彩,要搞出牛逼的作品来,开源项目源码要阅读,不断学习新知识。3.各种软件技能要有,沟通能力,做ppt演讲的能力,英文能力,写作能力,总结归纳能力。代写java系统,网站,大数据分析挖掘,nlp自然语言处理....都看到这里了,就顺手点击左上角的【关注】按钮,点击右上角的小手,给个评论,关注一下...
2017-05-18 11:06:50
1199
2
原创 gitflow的实战操作案例【经典实操】
Git reset: 像是一本书1-7页的书,不要第7页,就像删除第7页,回到第6页。让某段提交的历史消失。Git revet:想是一本书1-7页的书,新增一页第8页记录回滚到了第7页;它不会改写历史。总结:当你想要安全撤销一个已经推送到公共仓库的提交时,这是团队首选方案。他的优势:通过添加新的历史来修正错误,不会破坏其他协作者本地的仓库历史,他们只需要像往常一样 git pull就能同步你的修正。对私有分支用reset,对公共历史用revert。
2025-11-23 20:41:40
51
原创 mysql数据库的sql优化以及explain周期字段详解案例【爽文】
1.Where子句中的部分列没有索引:虽然使用了索引,但索引只覆盖了部分查询条件,例如,有一个索引(a, b),但查询条件是WHERE a = 1 AND c = 2。2.核心警报:当type=all时,如果extra出现 using filesort或 using temporary,查询几乎是性能瓶颈,必须优化。但查10天数据:type=ALL,全表扫描,索引失效。File的解释:如果排序的数据量小,会在内存中完成,如果数量量大,会使用磁盘临时文件,但无论如何,这都是一个cpu和io密集型的操作。
2025-11-02 12:54:21
662
原创 AI之智能体agent与dify的搭建
阶段3:real智能体智能体根据人类设定的目标,自主进行任务拆分,工具选择,进度控制,实现目标后自主结束工作。
2025-10-26 20:50:54
595
原创 java开发手册与规范
2.在定义常量时,常量名全部大写且单词之间用下划线隔开,如MAX_COUNT。如 userservice/UserDO;1.类名使用驼峰风格,
2025-10-25 22:35:33
193
原创 java基础知识23 java的字符串为null&拼接空串(“”)内存布局
/ 栈中有变量,指向常量池中的"hello"String s2 = "";// 栈中有变量,指向常量池中的""String s4 = new String();// 栈中有变量,指向堆中的新对象。// 栈中有变量,不指向任何对象。3.在java中,null不是对象,不占用对象内存。4.null表示"无对象",它本身不是对象,// 情况4:new 创建对象。// 情况1:null 赋值。// 情况2:空字符串。// 情况3:字符串字面量。
2025-10-19 13:26:55
222
原创 2025版spring security认证授权详解篇【经典】
目录一 springsecurity 认证授权1.1 总流程1.2 关键代码详解1.3 资料二 详解流程2.1 WebSecurityConfig中config方法的执行顺序2.2.1 完整的执行流程2.2.2 完整的代码2.3 认证流程顺序2.4 授权流程顺序2.5 SecurityContextHolder2.5.1 securityContextHolder的写入2.5.2 securityContextHolder的获取2.5.3 线程安全与请求清理*2.5.4 总结2.6 完整流程的详解1.阶
2025-10-12 10:29:42
980
原创 Spring中成员变量(普通与@autoworied注入)的安全性
目录一 spring中的成员变量1.1 @Autowired修饰成员变量1.2 @Autowired修饰成员变量与普通成员变量1.2.1 案例普通成员变量与@autowire成员变量编辑1.3 @Autowired修饰成员变量为何安全*1.3.1 原因1:单例1.3.2 原因2:无状态1.3.3 总结1.4 springbean的作用域1.5 spring对象依赖注入方式1.6 spring对象单例实例能被安全共享1.7 spring对象单例实例能被安全共享1.8 spring保证线程安全的策略1.9 @
2025-10-09 15:51:38
652
原创 AI 大模型之spring alibaba篇
Server-Sent Events (SSE) 是一种允许服务端可以持续推送数据片段(如逐词或逐句)到前端的 Web 技术。通过单向的HTTP长连接,使用一个长期存在的连接,让服务器可以主动将数据"推"给客户端,SSE是轻量级的单向通信协议,适合AI对话这类服务端主导的场景客户端发起一个请求,服务器保持这个连接打开并在有新数据时,通过这个连接将数据发送给客户端。这与传统的请求-响应模式(客户端请求一次,服务器响应一次,连接关闭)有本质区别。SSE下一代(Stream able Http)。
2025-10-05 21:26:15
534
原创 junit4中通过autowired注入和构造器注入混合模式下单测
再次测试: 构造器注入的objectmapper和autowired注入的userservice 均不为null。存在的问题:发现通过autowired注入的userservice为null。controller类中使用构造器和autowired两种注入方式。在setup方法中,增加一行初始化。
2025-09-30 23:45:39
255
原创 git的merge与rebase的区别与操作
注意:提交 A', B', C' 是全新的提交,虽然内容与 A, B, C 相同,但哈希值已经改变。它把一条发展线(特性分支)上的所有修改“抽取”出来,将 feature 分支上自从祖先 E 之后的所有提交(A, B, C)“暂时取消”。把 feature 分支的起点更新到 main 分支的最新提交 G 上。它找到 feature 分支和 main 分支的共同祖先(E)。将刚刚取消的提交(A, B, C)按顺序重新应用到 G 之后。它会找到两个分支的共同祖先(commit E)。它忠实地保留了历史的原貌。
2025-09-29 20:10:14
444
原创 spring事务传播级别的实操案例2
在一个方法中,先修改数据库,然后使用http请求远程dify服务,出现数据不一致的问题。如下图2.请求方法后:本地修改数据库成功,dify调用失败;数据库中名称有xx-222改成了xx-333;怎么办?数据不一致,dify服务没有修改成功,而本地数据库修改成功了,正常要同生共死,一起成功,一起失败的。
2025-09-28 20:35:16
367
原创 spring的依赖注入的3种方式(字段、构造函数、setter方法)
这是 Spring Boot 团队和现代 Spring 实践中最推荐的方式。当你的类只有一个构造方法时,从。:在单元测试中,你必须使用反射来注入 Mock 对象,或者启动整个 Spring 容器。Spring Boot 充分利用了这一特性,使得代码非常简洁。关键字),保证完全初始化的对象,代码意图清晰,易于单元测试。:灵活性高,可以在对象创建后重新设置依赖(虽然很少这么做)。:类需要哪些依赖不明确,违反了明确依赖原则。注解直接标注在字段上,通过反射机制注入。:通过 Setter 方法注入依赖。
2025-09-25 20:11:42
456
原创 langchain4j笔记篇(阳哥)
1.阿里百炼平台的通义模型: https://bailian.console.aliyun.com/1.apikey不可设置明文,设置环境变量。langchain4j的目标是简化将。LLM集成到java应用程序中的过程。4.获取baseurl开发地址。
2025-09-08 18:54:07
244
原创 springboot整合minio实现上传下载&搭建minio
1.下载地址2.在本地新建一个目录存储minio,然后在目录下新建bin,data,log这3个子文件夹如图:2.将下载的minio.exe放到bin目录下3.进入bin目录,进行启动ljf-888Setx执行结果如下:4.进行访问。
2025-08-31 18:58:10
327
原创 elasticsearch 7.x elasticsearch 使用scroll滚动查询中超时问题案例
第一次resttemplat.search 查询出一批快照数据放到上下文,然后进行逻辑A,逻辑B,逻辑C的处理,如果A+B+C=7s,7s大于5s,此时scrollid就会失效;设定的超时时间(例如,每 4 分钟请求一次,超时设为 5 分钟),你就可以一直继续下去,无论总数据量有多大、总耗时多长。执行scroll查询后,将scroll查询信息放到上下文存活的时间,而不是执行scroll查询es数据的时间。2.如果你的间隔超过了超时时间(例如,两次请求间隔了 6 分钟,而超时是 5 分钟),
2025-08-24 12:59:06
671
原创 elasticsearch 7.x elasticsearch是查询的数据量大于10000分页有问题还是es的库总量大于10000分页有?
2.问题出在单次查询请求想要跳过的文档数量(from)加上要获取的数量(size)超过了 index.max_result_window(默认10000)。即使你的整个索引只有 11000 条数据,你也无法用 from=10000&size=10 来获取最后 10 条。1.Elasticsearch 分页问题主要出现。
2025-08-24 12:26:42
312
原创 linux查看磁盘是否用完的实战案例
非常小(比如几兆),就说明该磁盘分区空间已经用完或即将用完。(Disk Free)命令是专门用于显示文件系统磁盘空间使用情况的。列,找到使用率为 100% 或接近 100% 的挂载点(如。:清理包管理器的缓存(对于 Ubuntu/Debian,使用。:如核心转储文件(core dump)、残留的软件安装包等。逐层向下,直到找到罪魁祸首的大文件或目录(如。根据人类易读的数字排序(如 1K, 2M, 3G),根目录)使用率 100%,下一步就需要。)需要 root 权限才能访问。反向排序(从大到小)。
2025-08-24 11:25:53
597
原创 elasticsearch 7.x elasticsearch 使用scroll滚动查询一页,删除一页,影响后面滚动的查询吗
当你发起一个带有 scroll 参数的搜索请求时(例如 scroll=1m),Elasticsearch 会立即为当前查询条件“拍一张快照”。这个快照包含了那个时间点所有符合查询条件的文档的列表(以及它们的排序)。即使你随后把书中第50页的内容撕掉了(删除),你的目录页上仍然会写着第50页,你仍然可以根据目录翻到那个位置(尽管内容已经没了)2)保持上下文:Elasticsearch 会在内部维护一个“搜索上下文”(Search Context),用于保存这个快照的状态信息(如排序顺序、匹配的文档等)。
2025-08-22 19:18:45
632
原创 es7.x es的高亮与solr高亮查询的对比&对比说明
fragmentSize(1000) 设置片段长度numOfFragments(1) 指定返回的片段数量preTags() 和 postTags() 设置高亮标记在 ES 中,使用 matchQuery 而非 termQuery 进行内容查询,因为:matchQuery 会分析查询文本,更适合高亮termQuery 用于精确匹配,不适合片段提取explain(true) 使返回结果包含评分信息通过 hit.getScore() 获取文档相关性得分获取第一个高亮片段的内容。
2025-08-19 09:16:31
930
原创 java之 junit4单元测试Mockito的使用【经典】
Mockito是一个用于Java单元测试的mock框架,用于创建(mock object)来替代真实对象,帮助开发者隔离外部依赖,从而专注于单元测试的逻辑,Mockito通常配合单元测试框架(如JUnit)使用。
2025-08-17 18:00:05
1353
原创 es7.17.x es服务yellow状态的排查&查看节点,分片状态数量
目录一 查看集群节点,分片的状态的命令1.1 查看节点数1.1.1 方式11.1.2 方式21.1.3 方式31.1.4 总结1.2 查看分片数量二 es服务状态为yellow的排查2.1 问题描述2.2 排查步骤2.2.1 确认索引状态2.2.2 案例2.2.3 根本原因2.2.4 解决办法2.3 解决办法实操方式1:http://localhost:9200/_cat/nodes?v方式2:http://localhost:9200/_cluster/health?pretty说明:"n
2025-08-17 16:09:47
1089
原创 linux服务器查看某个服务启动,运行的时间
查看启动时间(精确到秒):ps -p <PID> -o lstart例子如下:ps -p 1234 -o lstartps -p <PID> -o etimeps -p 1234 -o etime
2025-08-15 23:10:58
369
原创 es7.x的客户端连接api以及Respository与template的区别,日期格式定义
在 Spring Data Elasticsearch 中,Repository和是两个核心组件。
2025-08-15 23:06:07
337
原创 es7.x中分片和节点关系以及查看节点数
3.每一个节点上所有的分片,加一起才能构成完整数据集。如node1:R0和p1,node2:R0和R1,node3:P0和R1;这3个节点的每一个节点存储的数据是相同的。主分片p1和p0 加一块才能构成整个index(库)的完整数据,任何一个分片只是其中1/2的数据量。P0和副本R0,RO存储到不同节点;P1和R1,R1存储到不同节点。每个主分片有两个副本分片。相同分片的副本不会放在同一节点。我们假设有一个集群由三个节点组成。二 查看索引与mapping。的索引,有两个主分片,2.1 查看所有索引。
2025-08-15 22:55:03
487
原创 idea中使用maven造成每次都打印日志
某天,idea中运行一个普通类,都要进行builid success ,如图:理论知识:2.具体操作将勾选去掉3.再次执行。
2025-08-10 19:41:37
209
原创 java中Optional类的使用和注意采坑
public class Bianli { public static void main(String[] args) { ChatInfo chatInfo = new ChatInfo(); chatInfo.setId(1); List<Message> messageList = new ArrayList<>(); Message message = new Message();
2025-08-03 20:58:02
531
原创 junit总@mockbaen与@mock的区别与联系
当测试涉及 Spring 特性(如依赖注入、事务、AOP)时,使用。当测试不涉及 Spring 容器时(如工具类、算法类),使用。
2025-08-02 18:03:22
400
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅