- 博客(62)
- 资源 (2)
- 收藏
- 关注
原创 惊!你的代码可能正在被事务 “拖后腿“——Spring 事务注解性能优化实战
惊!你的代码可能正在被事务 "拖后腿"——Spring 事务注解性能优化实战
2025-12-25 13:58:29
884
原创 1 行代码让 1000 笔订单支付失败!这个 Set 集合坑 90% 程序员都踩过
1 行代码让 1000 笔订单支付失败!这个 Set 集合坑 90% 程序员都踩过
2025-10-24 14:45:51
268
原创 惊出冷汗!读完《影响力》才醒:超市试吃买单、买电脑被坑、职场跟风…6 个套路天天绕着你转,3 招反制不做 “冤种”
惊出冷汗!读完《影响力》才醒:超市试吃买单、买电脑被坑、职场跟风…6 个套路天天绕着你转,3 招反制不做 “冤种”
2025-10-23 00:30:49
625
原创 我被AI坑惨了!Redis multiGet这坑90%的Java开发者都踩过
作者用Redis multiGet批量查缓存时,被AI提示“顺序可能错乱、存在越界风险”,改出冗余代码后才发现:Redis官方明确multiGet返回顺序与传入keys完全一致,不存在的key仅返回null,顺序绝不会乱!教训:基础API用法别全信AI,先查官方文档更靠谱~
2025-10-16 09:58:25
881
原创 从年薪5万到50万:工资涨10倍,我靠这3个“反常识”坚持破局
摘要: 从月薪4000到年薪40万,11年职场逆袭的秘诀并非运气,而是三个核心策略:聚焦长板,将优势打磨到不可替代;利用碎片时间持续学习,保持竞争力;以结果为导向,用实际成果证明价值。文章通过亲身经历揭示:普通人的成长没有捷径,只有不断突破舒适区、在关键领域持续深耕,才能实现质的飞跃。真正的职场底气,源于每一次"再坚持一下"的积累。(149字)
2025-10-14 00:22:51
277
原创 从“饥饿营销“到“全场景生态“:价格背后的市场进化论
📱 小米新款发布的消息弹出时,我下意识翻了翻抽屉里那部泛黄的小米1——塑料后盖上还留着当年贴的卡通贴纸,充电口边缘的掉漆痕迹里,藏着2011年那个夏天全国年轻人的集体记忆。
2025-09-26 09:51:27
989
原创 探秘Java HashSet remove失效:那些让人“抓耳挠腮”的事儿与神奇解法
/ 只重写了equals方法,没有重写hashCode方法@Override// 创建一个与person1内容相同的新对象// 预期移除person2,但由于hashCode未重写,移除失败System.out.println("元素是否移除成功: " + removed);瞧这代码,咱定义了个Person类,满心欢喜地重写了equals方法,想着这下万事大吉啦。结果呢,却忘了重写hashCode方法。这就好比你给家门换了把新锁(equals。
2025-09-23 15:51:16
688
原创 为什么你加班到10点还在改bug?高手早用「暗时间」下班了
《暗时间》揭示:高手用“大脑后台运行内存”,将走路、吃饭等碎片时间转化为思维编译期。其价值远超熬夜——实际成长=时间×效率密度,暗时间提升后者。程序员可通勤时“跑架构设计”、午休“复盘代码”、睡前“植入问题”,让思维在后台“离线编译”,实现效率翻倍还不用加班。💡
2025-09-19 14:54:02
497
原创 2025主流大模型核心信息
本文对比2025年8大主流大模型,其中国际模型以GPT-5、Claude 4为代表,技术领先但存在本土化不足;国内模型如通义千问3.0、文心5.0则强于中文处理与行业落地。通过拟人化比喻展现各模型优劣势,设计趣味场景演示能力,并以"性格测试"形式提供选购建议,助用户快速匹配需求。
2025-09-11 23:01:11
971
原创 AI 技术体系核心概念
将复杂任务拆解为有序步骤,按预设流程执行以确保准确性和效率,类似工厂流水线的 “生产手册”—— 仅关注 “步骤先后”,不涉及 AI 模型底层逻辑。通过检索外部知识库(企业文档、数据库等)增强大语言模型(LLM)的回答准确性,解决 LLM “知识过时”(如未收录 2024 年新政策)和 “幻觉”(虚构信息)问题。用私有数据(如企业内部问答、行业专属术语)调整预训练大模型的参数,让 AI 从 “通用学霸”(如 GPT-4、文心一言)转变为 “领域专家”(如法律 AI、医疗 AI)。
2025-09-10 23:35:58
609
原创 异地多活架构:从“机房炸了”到“用户无感”的逆袭之路
异地多活架构通过多地部署服务,解决单点故障与城市级灾难,保障服务持续可用。核心技术含数据分级同步(CAP理论权衡,核心数据强一致、非核心最终一致)、冲突处理(时间戳/版本号/业务规则策略)、故障秒级自动切换(心跳+业务健康检测)及成本分级复用(核心机房物理机+非核心云服务器)。实战需适配业务场景,最终实现99.99%可用性,让故障对用户无感。
2025-09-04 19:25:29
1004
原创 2025年9月3日 技术学习打卡日志
想通「轻记忆」后,我突然更懂用户笔记里的「思维模式还是需要着重打磨」——思维模式是「如何思考问题」的底层逻辑,它决定了你遇到新问题时,能不能用旧知识推导出新解法。(举一反三)举个例子:同样是学「拦截器和过滤器」,「记细节」的人会背:「过滤器是Servlet规范,拦截器是Spring MVC;过滤器在Servlet容器初始化时创建,拦截器在Spring IoC容器初始化时创建」。但「练思维」的人会问:为什么会有这两种技术?
2025-09-03 15:27:45
738
原创 Spring AOP深度解析:从实现原理到最佳实践
Spring AOP通过动态代理(JDK/CGLIB)实现横切逻辑与业务解耦,运行时织入增强。需注意代理限制(final类/方法不支持、private方法无法增强)及自调用问题。最佳实践包括精准切点、优先环绕通知、控制切面数量;性能优化可通过代理选择(单例用CGLIB、原型用JDK)和拦截器链精简实现。一文掌握原理、避坑与提效技巧。
2025-09-03 14:57:13
1175
原创 HandlerInterceptor 与 Filter 深度对比及生效维度解析
HandlerInterceptor与Filter是Java Web请求拦截工具:Filter属Servlet规范,作用于容器层,拦截所有请求(含静态资源);HandlerInterceptor是Spring MVC专属,仅拦截Controller请求。Filter先执行(容器层),HandlerInterceptor后(框架层)。全局处理(跨域、编码)用Filter,业务精细控制(权限校验)用HandlerInterceptor。
2025-09-02 15:57:12
596
原创 Hutool JSONUtil.toBean 转换字段丢失问题
在做单元测试使用JSONUtil.toBean反序列化时,发现某些字段丢失。发现是存在两个hutool包5.7.6和5.8.20。将老的5.7.6的包排除引入新的。
2023-11-09 09:34:29
1294
原创 重温缓存的正确使用姿势
Cache Aside: - 读取数据时,先从缓存读取,如果缓存中不存在,则从数据库中读取,并将数据存入缓存。可能出现缓存穿透的问题。- Read/Write Through: - 读取数据时,先从缓存读取,如果缓存中不存在,则从数据库中读取,并将数据存入缓存。- 写入数据时,先检查缓存,如果不存在,则直接更新数据库,并将数据存入缓存。- 缓存穿透:指请求的数据在缓存和数据库中都不存在,导致每次请求都需要访问数据库。多级缓存: 多级缓存是指在系统中使用多个层次的缓存,以提高缓存的命中率和性能。
2023-10-16 21:33:24
225
原创 idea 拉取 GitLab 分支和实际提交记录不一致
解决冲突时,突然发现从idea origin/test 拉取到的分支合并时,有大量类变更。然后查看提交记录发现也对不上号了。
2022-10-20 10:42:27
903
原创 spring 事务配置
<!-- 声明式事务管理 --><!--定义事物管理器,由spring管理事务 --><bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="jedDataSource"></property></bean>.
2021-11-26 12:38:39
389
原创 JDBC超时、时区参数ConnectTimeout
下面是不同驱动的socket timeout配置方式。connectTimeout和socketTimeout的默认值为0时,timeout不生效。 除了调用DBCP的API以外,还可以通过properties属性进行配置。JDBC Driver connectTimeout配置项 socketTimeout配置项 url格式 示例 MySQL Driver connectTimeout(默认值:0,单位:ms) socketTimeout(默认值:0,单位:
2021-10-14 14:37:00
7176
原创 关于分库保证数据一致性相关思考
1、分布式事务tcc、柔性事务2、最终一致性可以做的事情:、工具化实现常用方案总结(强一致、弱一致、最终一致)常用场景总结数据库分库(目前主要场景)不同中间件(mq、数据库)不同的应用()目前实现原理强一致:2pc:投票、决定问题:单点故障,事务管理器出现故障,整个系统不可用数据不一致:在阶段2事务管理器只成功发送了部分commit信息。响应时间较长:当事务管
2021-09-26 09:35:13
846
原创 mysql中Timestamp,time,datetime 区别
参考内容:Mysql的timestamp(时间戳)详解以及2038问题的解决方案_ratel的博客-优快云博客_timestamp 范围 使用场景 备注 Timestamp ’1970-01-01 00:00:00’到2037年 时间戳、自动时区转化,实际存储毫秒数,4字节存储 时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至
2021-09-26 09:32:24
280
原创 性能篇系列—stream详解
合理使用Stream在循环迭代次数较少的情况下,常规的迭代方式性能反而更好 在单核CPU服务器配置环境中,也是常规迭代方式更有优势 在大数据循环迭代中,如果服务器是多核CPU的情况,采用Stream的并行迭代优势明显Stream APIJava 8集合中的Stream相当于高级版的IteratorStream API通过Lambda表达式对集合进行各种非常便利高效的聚合操作,或者大批量数据操作Stream的聚合操作与数据库SQL的聚合操作sorted、filter、map等非常类似 在数
2021-09-26 09:31:20
1061
原创 Idea 右侧常用栏中没有Maven选项
idea版本 2021.3原因:新拉取了一个项目,但是项目却没有maven选项。此时需要手动将此项目设置为maven项目1、使用Shift +Ctrl +A(windows)2、然后选择项目的rootpom文件即可3、后面idea会自动加载maven...
2021-08-06 09:43:09
771
原创 window hosts不生效的可能
一、配置windows下域名解析文件位置:c:\windows\system32\drivers\etc\hostswindows下修改的文件为:到命令行(cmd) ping一下,看是否解析注意:中间的空格建议从上边拷贝下来,使用tab出现ping不通的问题。生效的这行不能有#不然会无效,就写在最后也不行。二、修改hosts文件不起作用的问题1、关闭浏览器2、命令行(cmd)运行:ipconfig /flushdns #清除DNS缓存内容3、ping一下地址,看...
2021-08-03 20:37:08
3357
1
原创 ibatis 查询字段丢失
起因:一个查询语句,明明数据库有值但是用ibatis查询出来的值却是null。根据查询源码得到是在此处获取字段值时为空com.ibatis.sqlmap.engine.mapping.result.ResultMappublic Object[] getResults(StatementScope statementScope, ResultSet rs) throws SQLException { ErrorContext errorContext = stateme
2021-05-20 12:19:41
437
原创 异常:Unknown lifecycle phase “mvn“. You must specify a valid lifecycle
原来命令:mvn org.jacoco:jacoco-maven-plugin:0.8.5:report调成去掉 mvn 即可
2021-05-12 12:03:38
333
原创 jacorg.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 19
这个问题是tomcat版本过低报的错误,由于开发的tomcat版本高于部署的tomcat版本,所以你部署的时候会遇见这个错误。解决办法:方法一:将当前的tomcat7升级至高版本tomcat8。方法二:将当前的tomcat7的tomcat\conf\catalina.properties文件,节点增加log4j-api-2.10.0.jar,然后重新启动tomcat,问题解决。(其实目的就是设置tomcat扫描时忽略这个jar包)tomcat.util.scan.DefaultJarSca
2021-05-11 19:45:44
1275
原创 mapstruct常用问题点
https://mapstruct.org/faq/#why-does-named-not-work在使用@Mapping#qualifiedByName时要特别注意,方法的参数和返回值要和源,目标属性完全一致。不然会抛出找不到方法异常
2021-04-30 10:06:57
843
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅