各位 V 友们 , 你们创建 Spring Boot 项目之后会做那些初始化工作?

2023-12-07 21:53:53 +08:00
 changdy

和各位大佬交流下 .如果你们新建一个项目 会做那些初始化工作 . 我先说我的吧.

  1. 做好 mdc 上下文以及自定义日志配置.
  2. 异步线程池&定时任务设置好配置
  3. 自定义异常&异常处理器
  4. json 序列化配置 , long 类型转 string
  5. 引入 CommonsRequestLoggingFilter 打印请求,非常好用推荐
  6. 针对 dubbo 的话可以进行一个 filter 打印请求和返回情况
  7. 如果 mysql 上有死锁 , 考虑加个自定义的事务监听, 统计事务耗时 ,加 mybatis sql 拦截器 ,手动加个 mdc,方便根据 sql 中的 mdc 查找到代码的上下文.
7809 次点击
所在节点    Java
61 条回复
oneisall8955
2023-12-08 20:06:21 +08:00
@358343917 精度问题,前端 19 位后面全是 0
mgzu
2023-12-08 20:25:54 +08:00
@Bingchunmoli 我是看 spring boot commit 来学习 unit test 写法。单测和 ci cd 对框架来说更重要,比如升级依赖版本后,框架层的设计可能就不能按预期工作
Bingchunmoli
2023-12-08 22:48:55 +08:00
@mgzu 可能更多情况是有其他人用非自己用能遇到问题或者角度或许才能考虑到一些事情和一些动力来源,
sunny2580839896
2023-12-09 07:38:49 +08:00
我用若依,你说什么我不知道
changdy
2023-12-09 22:41:41 +08:00
@sunny2580839896 哈哈 本来我是想让大家讨论下 众人拾柴. 不过可能大家都比较害羞.
dongci777
2023-12-10 02:43:06 +08:00
学会写 starter ,然后把项目经常使用的操作封装成一个 starter 放在自己的私服下面,然后直接每次项目引入就好了,像你这样不得每次累死,而且还容易漏
fjdingsd
2023-12-10 08:42:33 +08:00
我好奇,大家会滥用 @PostConstruct 注解吗?
changdy
2023-12-10 09:40:47 +08:00
@dongci777 所以现在不是正在搜集那些能加入 starter 啊..大佬一起分享下呗.
changdy
2023-12-10 09:41:23 +08:00
@fjdingsd 什么算滥用 2333 . 不是都是用到了采用.
jaylee4869
2023-12-10 12:39:59 +08:00
swagger openapi
actuator endpoint
cxk0
2023-12-10 16:18:04 +08:00
这个帖子早该出来了~ 太帅了!逐条拜读,并做记录。 谢谢各位大佬!
DdDddDlush
2023-12-11 12:58:10 +08:00
@SnowHall 先感谢回复。作为脚手架个人感觉比较重。也可能是我自己水平不行不太会剥离,想要一点更轻量的。
simanW
2023-12-13 01:02:36 +08:00
楼主能提供个 demo 吗?感觉你这个初始化工作看着挺不错的
changdy
2023-12-15 00:26:15 +08:00
@simanW 我周末整理一下吧...同时我也在知乎 问问 ..然后也去掘金尝试抛砖引玉 .看看有没有人一起完善这种比较使用的方法/类/配置
ccmjga
2023-12-18 21:41:31 +08:00
https://tanronggui.xyz/t/1001297#reply2
如果可以接受这个技术栈的话,可以上面这个脚手架。大家关心的测试、代码质量、工程结构等在脚手架中都有体现。
一些做法大家也可参考这个脚手架的实现。

@wxw752
@potatowish
@changdy
@finalsatan
@DdDddDlush
@mgzu
@Bingchunmoli
@mgzu
@fjdingsd
@simanW
RotJun
2024-01-01 16:53:43 +08:00
@anakinsky #8 大佬,logbook 咋用的呀
anakinsky
2024-01-03 08:53:01 +08:00
@RotJun 依赖加进去就行啦,配置按需

```
<dependency>
<groupId>org.zalando</groupId>
<artifactId>logbook-spring-boot-starter</artifactId>
<version>${logbook.version}</version>
</dependency>
```
RotJun
2024-01-03 19:06:42 +08:00
@anakinsky #57 需要写配置类嘛
anakinsky
2024-01-04 08:45:39 +08:00
@RotJun 不需要
liuqitoday
2024-01-18 15:24:54 +08:00
@changdy #54 楼主整理好了么 希望学习以下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/998488

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX