- 博客(67)
- 资源 (41)
- 收藏
- 关注
原创 3 种 Springboot 全局时间格式化方式,别再写重复代码了
分享了一个简单却又很实用的Springboot开发技巧,其实所谓的开发效率,不过是一个又一个开发技巧堆砌而来,聪明的程序员总是能用最少的代码完成任务。
2025-07-09 10:17:37
295
原创 Spring Boot 忽略 JSON 字段的 6 种终极方案
通过继承 JsonSerializer<T> 实现自定义序列化器,重写 serialize 方法,手动控制字段输出,忽略敏感字段如 password 和 idNo,实现灵活的 JSON 序列化逻辑。@JsonView 核心作用是按需控制对象属性的序列化与反序列化,通过指定视图类来筛选参与的属性,实现不同场景下(如公开/管理接口)返回数据的差异化展示,避免冗余数据传输并提升安全性。然而,在实际开发中,并非对象中的所有字段都需要参与序列化(对象转 JSON)或反序列化(JSON 转对象)操作。
2025-07-09 10:13:14
695
原创 5个 IDEA 插件让开发效率狂升50%
专注于Java代码规范,目的是让开发者更加方便、快速规范代码格式。该插件在扫描代码后,将不符合规约的代码按BlockerCriticalMajor三个等级显示出来,并且大部分可以自动修复,它还基于 Inspection 机制提供了实时检测功能,编写代码的同时也能快速发现问题所在。阿里巴巴规约扫描包括:OOP规约并发处理控制语句命名规约常量定义注释规范: 重新运行一次扫描Close:关闭真个AJCG面板Expand All:展开结果的树状结构,整个结果是树状结构的。:收起结果的树状结构。
2025-07-09 10:05:53
737
原创 高性能、无侵入的 Java 性能监控神器
随着所在公司的发展,应用服务的规模不断扩大,原有的垂直应用架构已无法满足产品的发展,几十个工程师在一个项目里并行开发不同的功能,开发效率不断降低。于是公司开始全面推进服务化进程,把团队内的大部分工程师主要精力全部都集中到服务化中。服务化可以让每个工程师仅在自己负责的子项目中进行开发,提高了开发的效率,但是服务化同时也带来了其他问题:无法知道每个服务的运行情况,例如,某一台服务它目前的 QPS 是多少?它的平均延迟是多少,99% 的延迟是多少,99.9% 的延迟又是多少?
2025-06-21 13:57:31
414
原创 几款实用的内网穿透工具
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。一台有公网IP的服务器(VPS)运行服务端(NPS)一个或多个运行在内网的服务器或者PC运行客户端(NPC)图片。
2025-03-29 08:08:09
1037
原创 防止超卖的7种实现方式
在开发中,对于下面的代码,可能很熟悉:在Service里面加上事务注解和Lock锁。控制层:Controller业务层:Service对于上面的代码应该没啥问题吧,业务方法上加事务,在处理业务的时候加锁。但上面这样写法是有问题的,会出现超卖的情况,看下测试结果:模拟1000个并发,抢100商品。这里在业务方法开始加了锁,在业务方法结束后释放了锁。但这里的事务提交却不是这样的,有可能在事务提交之前,就已经把锁释放了,这样会导致商品超卖现象。所以加锁的时机很重要!
2025-03-04 16:53:58
415
原创 xxl-job,彻底告别手动配置任务!
项目的完整代码已经传到了我的github上,小伙伴们如果有需要的可以自行下载,也欢迎来点个star支持一下~
2025-02-05 16:21:27
672
原创 java结合reids 实现并发去重,优雅地处理重复请求!
目前的主流,我们的参数通常是一个JSON。那么针对这种场景,我们怎么去重呢?如下面的例子,请求的其他参数是一样的,除了请求时间相差了一秒。
2024-12-07 09:51:34
224
原创 60个开源项目,简直就是开发、私活儿的神器
个人任务管理工具 源码地址:https://github.com/kesin/taskover.git Taskover 是基于Rails+VueJs的一款开源个人任务管理工具,通过简单易用的任务归纳分类方式,用来帮助高效地追踪管理各项任务,最大化的提升工作效率。主要实现:注入,istio配置和模板(还在开发中)等功能。- 轻量级的在线项目/任务协作系统 源码地址:https://github.com/a54552239/pearProject.git 轻量级的在线项目/任务协作系统,远程办公协作。
2024-02-20 10:29:45
772
原创 SQL 查询优化的 10 个案例!
在应用开发的早期,数据量少,开发人员开发功能时更重视功能上的实现,随着生产数据的增长,很多SQL语句开始暴露出性能问题,对生产的影响也越来越大,有时可能这些有问题的SQL就是整个系统性能的瓶颈。
2023-11-27 15:15:26
948
原创 别再用Mybatis Plus 的伪批量新增了!
先抛出一个问题:假设老板给你下了个任务,向数据库中添加 100 万条数据,并且不能耗时太久!如果你需要添加 100 万条数据,就需要多次执行此语句,这就意味着频繁地 IO 操作(网络 IO、磁盘 IO),并且每一次数据库执行 SQL 都需要进行解析、优化等操作,都会导致非常耗时。和常规的INSERT语句不同的是,VALUES支持多条记录,通过逗号隔开。这样,可以实现一次性插入多条记录。数据量不多的情况下,常规INSERT。
2023-09-11 14:39:45
741
原创 spring boot +Sa-Token优雅的实现项目鉴权!
Sa-Token是一个轻量级Java权限认证框架。主要解决的问题如下:登录认证权限认证单点登录OAuth2.0分布式Session会话微服务网关鉴权等一系列权限相关问题。Sa-Token框架是一个轻量级的登录、鉴权框架,有利于我们开发。
2023-05-24 14:43:23
1632
原创 SpringBoot 生产中 16 条最佳实践
这条实践是我根据实际项目中的经历总结出的。Spring Boot 项目本身使用和集成了大量的开源项目,它帮助我们维护了这些第三方依赖。但是也有一部分在实际项目使用中并没有包括进来,这就需要我们在项目中自己维护版本。如果在一个大型的项目中,包括了很多未开发模块,那么维护起来就非常的繁琐。怎么办呢?事实上,Spring IO Platform 就是做的这个事情,它本身就是 Spring Boot 的子项目,同时维护了其他第三方开源库。
2023-05-19 14:59:42
559
原创 Win10下Docker Desktop+k8s安装
3. 点击“Apply & Restart”按钮完成docker desktop重启,至此完成win10 docker安装。打开kubernetes-dashboard.yaml (在\k8s-for-docker-desktop目录下)安装好了docker环境,必须是desktop 版本,本例子就是以docker decktop版本为基本讲解的。2. 右击托盘图标选择settings,选择Docker Engine菜单,具体docker的安装方法如下。访问网站,输入令牌,成功访问。一、安装docker。
2023-05-09 15:36:52
2177
原创 mysql优化命令
服务器设置最大连接数 和 服务器响应的最大连接数:show variables like 'max_connections';show global status like 'Max_used_connections'; 四、临时表 mysql> show global status like 'created_tmp%'; +-------------------------+---------+ | Variable_name | Value | +-----------------
2022-06-01 16:51:57
214
原创 Arthas java诊断工具使用
Arthas 用户文档 — Arthas 3.6.1 文档cd /data/java -jar arthas-boot.jar选中进程查看线程当前CPU排行
2022-06-01 16:34:43
111
原创 Java 8 新特征,设计模式
Java 8 中提供的很多新特性可以用来重构传统设计模式中的写法,下面是一些示例:一、策略模式上图是策略模式的类图,假设我们现在要保存订单,OrderService接口定义要做什么,而NoSqlSaveOrderStragegy以及MySqlSaveOrderStrategy则提供了二种策略,分别是保存到nosql数据库,以及传统的mysql关系型数据库,最后在OrderServiceExecutor中通过构造函数注入最终要使用的策略。传统写法,这个场景至少得4个类,代码如下: Ord
2022-05-07 16:39:45
183
tomcat跨域请求配置
2015-11-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人