- 博客(86)
- 资源 (6)
- 收藏
- 关注
原创 复习-JVM何时结束
摘要:Java虚拟机(JVM)会在所有非守护线程结束后退出。普通程序main线程结束后JVM即退出,而服务器程序(如Tomcat)会启动非守护线程持续运行。Tomcat通过Catalina容器的start()启动服务线程,并通过await()方法使主线程等待,实现优雅关闭:收到关闭命令后能完成请求处理、清理资源(如保存Session)。相比原生HttpServer直接结束主线程的方式,Tomcat这种设计能更好地控制服务生命周期,确保资源安全释放。
2026-03-11 18:38:06
93
原创 和三方人员接口对接注意事项
本文总结了业务系统对接开发中的关键注意事项。主要从三个方面展开:1)迁移项目需关注表依赖和接口依赖,确保数据一致性;2)对接项目需明确接口责任人、性能要求、限流机制等7个要点;3)数据同步需制定历史数据迁移方案、回滚机制和数据检核方法。特别强调要记录完整的请求日志以便问题排查,并注意数据类型转换可能导致的排序差异问题。这些经验有助于提高系统对接的成功率和稳定性。
2026-01-09 09:51:14
233
原创 企微群机器人发markdown消息支持表格
摘要:本文探讨了企业微信机器人发送Markdown表格消息及@指定人员的技术方案。研究发现:V1接口支持@人但不支持表格语法,V2接口支持表格语法但无法@人。解决方案需同时使用两个接口:markdown_v2类型用于发送表格数据,markdown类型用于@指定人员。企业微信客户端需升级至4.1.38及以上版本才能支持表格功能。这解决了告警提醒中数据对比和人员通知的需求,但存在接口功能不兼容的局限性。
2026-01-09 09:44:12
1800
原创 直接下载文件的java接口实现
摘要:本文介绍了Java Web应用中实现文件下载的两种方式。单文件下载通过设置响应头Content-Disposition和Content-Type,并对文件名进行URL编码处理,使用IOUtils工具类完成文件流传输。多文件下载则需要将文件打包成ZIP压缩包,通过ZipOutputStream逐个添加文件条目,最终输出压缩包流。两种方式都需要正确处理中文文件名编码,并确保及时关闭文件流资源。
2026-01-09 09:13:02
254
原创 ChatGPT发布后,为什么各大厂短时间内相继发布大模型产品
所以,情况并非“ChatGPT发布后,中国厂商技术就进步了”,而是:中国厂商的技术底蕴一直都在,只是ChatGPT的出现,像一盏探照灯,照亮了那条最有可能通往“通用人工智能”的道路,并引爆了全球性的竞争。大家从“暗中摸索”进入了“明牌竞赛”的阶段,因此你才在短时间内看到了如此密集的产品发布。
2026-01-09 09:12:35
628
原创 LangChain安装使用
本文介绍了Python环境下安装LangChain和DeepSeek相关库的步骤及常见问题解决方法。主要内容包括:1) 要求Python 3.10+版本,推荐升级到3.13;2) 安装langchain、langchain-deepseek和openai库时可能遇到的超时问题及手动下载解决方案;3) 在VSCode中正确选择Python解释器版本的重要性;4) DeepSeek API的使用示例和角色说明(system/user/assistant/tool);5) API错误处理(如402错误表示需要充值
2026-01-09 09:12:06
664
原创 Lambda作用域
Java Lambda表达式可以访问外部作用域中的局部变量(必须是effectively final)。在示例代码中,expireSecond作为局部变量被Lambda捕获使用,尽管它没有显式声明为final,但由于后续未被修改,编译器将其视为"effectively final"。这种机制允许Lambda访问但不修改外部变量,编译器会内部处理变量捕获。若变量被修改则会报错。另一种设计是将expireSecond作为函数式接口参数传入(如改进后的BiFunction方案),这更符合函数式
2026-01-08 10:58:01
242
原创 mysql8.0支持CURRENT_DATE如何写
mysql中,8.0.13版本之后的允许将Date字段的默认值设置为CURRENT_DATE(当前日期),设置CURRENT_DATE默认值,需要将其包裹在圆括号内,以区分常量默认值,否则将报语法错误。mysql官网文档mysql 将date字段默认值设置为CURRENT_DATE - 墨天轮。
2026-01-08 10:40:13
382
原创 MySQL CTE:SQL查询新模式
MySQL 8.0 CTE特性解析:解决复杂SQL查询难题 摘要: 本文针对MySQL 8.0引入的CTE特性进行解析,重点解决传统SQL查询中存在的嵌套黑洞、重复查询和调试困难三大痛点。CTE(公共表表达式)通过创建临时结果集,可显著简化多层嵌套查询,支持递归遍历树形结构,并提升查询复用性达30%以上。文章详细介绍了CTE的基本语法和多CTE使用方法,特别适用于计费规则等涉及深层级关联的业务场景。实践表明,CTE能有效提升复杂SQL的可读性和维护性,是数据导出和多表查询场景的理想解决方案。
2026-01-08 10:31:44
396
原创 阿里云PTS使用说明
PTS:性能测试PTS(Performance Testing Service)是一款简单易用,具备强大的分布式压测能力的SaaS压测平台。PTS可以模拟复杂的业务场景,并快速精准地调度不同规模的流量,同时提供压测过程中多维度的监控指标和日志记录。您无需准备资源,即可按需发起压测任务,监控压测指标,获取压测报告,进而能够高效率、全方位地验证业务站点的性能、容量和稳定性。
2026-01-08 10:25:02
816
原创 研发快速使用JMeter
摘要:本文介绍了使用JMeter进行接口压测的基本流程:1)通过bin目录命令启动JMeter;2)配置ThreadGroup设置并发参数;3)添加HTTPRequest配置接口URL、参数等;4)通过HTTPHeaderManager添加请求头信息;5)配置监听器ViewResultsTree和AggregateReport查看结果;6)压测前需清理历史数据,确保结果准确。特别提醒需先验证接口可用性,因JMeter对成功/失败的判定规则可能与实际系统不同。
2026-01-08 10:16:44
345
原创 OpenJDK Vendor下载选择
在选择下载openjdk时,会出现很多vendor供选择(Amazon Corretto,Eclipse Temurin,Red Hat等),这些都是代表什么意思呢,又该如何进行选择。
2024-11-07 13:56:04
1808
原创 StringTable String intern
JDK 11字符串常量池,在方法区中,通常不会显示的去使用,是封装好了的字符串处理方式。但是这个常量池默默的在后台支撑着字符串的处理。
2024-03-25 18:46:30
293
1
原创 接口超时-千篇一律的重试和优化
我以为我当甲方爸爸了,结果作为一个程序员在哪里工作能拿出甲方爸爸的硬气来呢?别个是真的不重视啊。调用别人接口,有问题别人是真不回啊,一个问题用了一天解决?
2024-02-22 18:47:07
602
原创 MAC乱操作——tomcat启动一直报错:接口占用
Unable to open debugger port (127.0.0.1:53001): java.net.SocketException "Socket closed"Address localhost:1099is already in use
2023-02-21 09:39:04
965
原创 Excel数据转换成SQL
1.收到一个数据表的excel,需要通过excel中的数据到mysql中查询数据相关的数据。2.处理数据,这里仅需要使用测试ID即可,只拿这一列数据在idea中建一个test.txt,把需要用到的列数据copy进去,去掉表头,win+r调出替换功能这部分数据,要做in查询,所以需要处理数据为(12,34,56,78)这种样式,使用正则进行匹配,先加,replace all即可然后是把所有数据放到一行,使用\s*\n进行匹配然后把末尾的逗号去掉就可以用了SELEC.
2022-01-07 15:48:37
7229
原创 Stream toMap IllegalStateException:Duplicate key
集合进行stream操作,Collectors.toMap转换成map时,如果list集合中有重复数据,更确切的说,是作为key的实例的属性值,存在重复,下面的写法就会报错:List<User> a = new ArrayList<>();for (int i=0;i<5;i++) { User u = new User(); u.setName("a"); u.setHome("b");
2022-01-06 09:22:20
1762
原创 MySQL从A表取数据插入B表中,sql可重复执行不会造成数据重复
需求:A表:销售人员服务表(新建表)CREATE TABLE `goods_service_staff` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID', `goods_code` int NOT NULL COMMENT '商品code', `sale_id` bigint NOT NULL COMMENT '销售人员ID', `business_group` int NOT NULL COMMENT '销售人员部门',...
2021-11-03 16:26:42
814
原创 Windows转Mac差异
Windows转Mac,刚开始上手有点不适应,记录一些使用区别:1.Windows大多数命令都是通过ctrl+命令键实现,Mac使用了command键,虽然Mac也要control。2.Windows支持exe的安装文件 Mac支持dmg的安装文件3.Windows所有的文件,编辑都是在文件窗口最上侧。 Mac都是位于整个窗口的最上侧,文件开启的文件上并没有这些配置。比如idea的file,edit等操作,Windows时都是跟idea窗口一起的,在Mac上,就位于顶部苹...
2021-09-15 15:18:58
626
java的log4j、slf4j的jar包
2017-11-15
elk指南+elasticsearchheader-windows安装说明
2018-12-01
opendj3.0.0与使用说明
2018-08-27
SAML2.0的纯英文文档
2018-08-01
OpenDJ-2.6.0
2017-09-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅