
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
包含:自定义异常、统一返回、全局捕获、异常分类、日志规范、实战案例。代码冗余、维护困难、前端对接痛苦、日志混乱,线上出问题还难定位。所有 Controller 抛出的异常,都会进入这里统一处理。六、第四步:整合 Validation 参数校验(非常实用)八、第六步:实际业务中怎么用?每个接口都写 try-catch,代码重复。统一异常处理,就是用来解决这些问题的。五、第三步:定义全局异常捕获类(核
大家都知道,Java中的String是不可变对象,每次用“+”拼接,都会新创建一个String对象,循环10000次,就会创建10000多个对象,不仅占用内存,还会降低程序运行效率,数据量越大,问题越明显。今天不搞虚的,不堆晦涩的源码解析,也不写AI式的套话,就结合我平时项目中遇到的实际场景,把3个最容易踩坑的Java高频问题,讲得明明白白,附上实战代码和避坑技巧,新手也能直接套用,少走弯路。不要
项目加载完成后,找到主启动类(FirstSpringbootApiApplication.java),不用动它,在同一个包下,新建一个 Java 类,命名为「HelloController」(命名规范:首字母大写,结尾加 Controller,固定写法)。count 一下代码:除去注释和空行,核心代码刚好 10 行(@RestController 1行、类定义1行、@GetMapping 1行、方
今天就结合我实际踩过的坑,跟大家好好聊聊ArrayList的线程安全问题,没有复杂的源码堆砌,全是项目里能用得上的干货,新手也能看懂。一开始我以为是代码逻辑有问题,反复检查了遍历和添加的时机,确认没有手动修改集合的地方,最后才反应过来——ArrayList本身就不是线程安全的,多线程环境下,添加和遍历操作同时进行,就会出现并发修改异常。Vector的锁是加在方法上的,不管是add还是get,都会加
它不抢 Spring MVC 的活儿,而是帮你把 Spring MVC 运行需要的所有环境、配置都搞定:自动配 Tomcat、自动配 Spring MVC 核心组件、自动扫描控制器,你只需要写业务代码,不用管任何配置。SpringBoot 能封装的远不止 MVC,还能封装 Spring Data JPA、MyBatis、Redis 等所有 Spring 生态组件,核心都是“自动配置”,MVC 只是
加了这个注解,SpringBoot 会完全关闭默认的 MVC 自动配置,所有配置都要你自己写(包括 DispatcherServlet、参数解析器这些核心组件),新手大概率会配崩。今天就教你 3 种自定义 Spring MVC 配置的方法,从简单到复杂,新手也能一步步跟着做,再也不用对着默认配置束手无策。这个接口里全是默认方法(不用全部实现,按需重写),覆盖了 MVC 配置的所有场景:静态资源、拦
```yaml app:id: multi-env-demo# 必须和 Apollo 里的应用 ID 一致 apollo:meta: http://localhost:8080# Apollo 服务端地址bootstrap:enabled: true# 开启 Apollo 引导namespaces: application.yml# 配置命名空间active: dev# 激活的环境 ```
但实际开发中,不同场景需要不同的服务器:比如追求高性能选 Undertow,追求轻量选 Jetty,兼容老项目选 Tomcat。今天就手把手教你:SpringBoot 里怎么切换内置服务器(Tomcat→Jetty→Undertow),以及三种服务器的核心区别、选型建议——纯实操,改几行配置就能搞定,再也不用被“默认 Tomcat”绑死。SpringBoot 之所以能一键启动,核心是把 Tomca
学会 SpringDoc,你再也不用手写接口文档,前后端对接效率直接翻倍!传统手写文档效率低、更新不及时、容易和代码不一致,沟通成本极高。兼容 SpringBoot 2.6x / 2.7x / 3.x。接口文档自动生成、在线调试、权限配置、分组管理、生产环境关闭。一、为什么选 SpringDoc,而不是 Swagger2?页面上直接输入 Token,所有接口自动携带。支持 SpringBoot 官
Postman适合手动联调,但项目上线后,每次迭代都要手动测试一遍所有接口,效率太低,这时候就需要用JUnit5做自动化测试,一次编写,反复使用。做后端开发,接口测试是绕不开的环节,既要保证接口能正常运行,又要应对前后端联调、线上稳定,所以今天就结合实际开发场景,来讲讲接口测试的方法。如果有多个接口需要测试,不用一个个点,直接用“集合批量运行”,勾选需要测试的接口,一键运行,还能导出测试报告,方便







