和各位大佬交流下 .如果你们新建一个项目 会做那些初始化工作 . 我先说我的吧.
1
dreamlike 350 天前 via Android
👀我理解如果每个新 sb 项目都要这一套的话 是不是有个抽一个 starter 来自动配置呢?
|
2
potatowish 349 天前 via iPhone 2
1. Logback 日志配置
2. OkHttp3 Client 及日志拦截器配置 3. CommonsRequestLoggingFilter 打印请求日志 4. Jackson ObjectMapper 自定义配置 5. Redisson 、Jedis Client 配置 6. 自定义异常、全局异常处理 |
3
wxw752 349 天前
把之前配好的脚手架 CV 一份到新目录,然后打开...
|
4
qianzanqi 349 天前
这些不都是应该由公司的基础组件团队提供吗,自动装配的 starter 只要引入就行了
|
5
changdy OP |
6
finalsatan 349 天前
半路出家的 java ,现在都是用同事搭建好的脚手架,学习学习各位大佬
|
7
cnzjl 349 天前
学到了,这就看下 CommonsRequestLoggingFilter
|
8
anakinsky 349 天前
CommonsRequestLoggingFilter 是要自己实现的吗,我用的这个 logbook 感觉还不错
https://github.com/zalando/logbook |
9
JerryYuan 349 天前 via Android 9
当然是先创建一个 banner.txt 啦(doge
|
10
chendy 349 天前
复制粘贴上一个项目,然后把业务代码抠掉然后 git init
写了小十年 java 才知道 CommonsRequestLoggingFilter ,以为是啥新东西,一看 since 1.2.5 ,看来还是学艺不精啊 |
11
mmdsun 349 天前
切面统计方法耗时、日志文件格式做一些自定义
|
12
FawkesV 349 天前
第一次知道这个 CommonsRequestLoggingFilter 学习了.
|
13
edotac 349 天前
其实就是每个项目的公共配置呗,提一个
LOGBACK 配置标准输出日志的颜色以及长度限制,方便在容器查看 |
15
changdy OP |
17
cp19890714 349 天前
只需要依赖自己写的 base-pom 和 common 就完事了, common 包含以下模块.
common-core 用于任意 java 项目的依赖. common-spring 用于 spring 项目的依赖 common-mvc 用于 spring-mvc 项目的依赖. common-webflux 用于 webflux 项目的依赖 common-micro-service 任何 springcloud 项目可以依赖. common-config 任何 springboot 项目可以依赖, 主要使用的通常配置项 和 配置文件都在里面了. 例如 log4j2 配置文件. |
18
whoami9426 349 天前 1
分环境打印接口出入参,耗时
MDC 添加操作人信息 分环境打印 SQL 执行语句,耗时 未捕获异常结合 git blame @提交人 告警到钉钉群处理 |
19
bill110100 349 天前
第一次知道 CommonsRequestLoggingFilter 打印请求 ,我之前都是配置 springboot 的配置项 spring:mvc:
log-request-details: true ,打印 org .springframwork.web 下的 trace 级别日志就能自动把请求和返回的信息全序列化到日志里 |
20
siweipancc 349 天前 via iPhone 2
给用 log 过滤器的提个醒,小心文件流
|
21
Martin9 349 天前
CommonsRequestLoggingFilter 好像不能记录 response ,有啥能 request ,response 一起记的么
|
22
potatowish 349 天前 via iPhone
@siweipancc setIncludePayload to false, or try setMaxPlayloadLength
|
23
dif 349 天前 1
只有我一个人先改 banner 吗? 手动狗头
|
24
DdDddDlush 349 天前
想白嫖一个脚手架
|
25
changdy OP @DdDddDlush 哈哈 我也是像白嫖一个..看能有那些进行设置的.
|
26
zhenjiachen 349 天前
我也第一次知道 CommonsRequestLoggingFilter ,学到了
|
27
xuanbg 349 天前
打开旧项目,复制 application.yml 和 common 目录到新项目
|
28
imkku 349 天前
|
29
SnowHall 349 天前 1
@DdDddDlush 推荐 ruoyi-vue-plus 。
|
30
nullable 349 天前
公司我都已经封装成一个个 starter 了,比如 xxx-cloud-web-starter 封装了:MDC 配置、统一日志、ObjectMapper ( long 转 string 、java.time API 、not null )、LoggingRequest (忽略 file ,LoggingResposne (打印部分)、自定义异常、全局异常处理、Redisson 、Nacos 。
其它的也基本上封装了,比如 mybatis 统一路径,扩展 Mapper 、xxljob 自动装配等、简化 application 的配置(约定) |
31
LiaoMatt 349 天前
没用过 CommonsRequestLoggingFilter, 但是我现在检查方法入参出参都用 arthas
|
32
LiaoMatt 349 天前
没用过 CommonsRequestLoggingFilter, 但是我现在检查方法入参出参都用 arthas 实时看
|
35
Greendays 349 天前
建完项目后一脸懵逼,点开以前的项目参考目录结构。。。
|
36
litchinn 349 天前
配置日志,配置数据库,配置 security ,配置 jackson ,配置 redis ,写个 Dockerfile ,引入一些 spring initializr 中没有的包
如果能自己改造下 spring initializr 或者用模板引擎搞一个生成器,那么可以啥也不做 |
37
Bingchunmoli 349 天前 via Android
尝试做了点,但是还是比直接写有点难的。https://github.com/BingChunMoLi/quick
|
38
mgzu 349 天前
@Bingchunmoli 没有单测和集成测试诶
|
39
Bingchunmoli 349 天前 via Android
@mgzu 公司没有做测试的经验,只能自己摸索着写,https://github.com/bingchunmoli/moliapi. 这个写了但是出现了一些问题,影响打包了,
|
40
youngPacce 349 天前 via Android
long 转 string 是为啥?
|
41
oneisall8955 349 天前 via Android
@358343917 精度问题,前端 19 位后面全是 0
|
42
mgzu 349 天前 1
@Bingchunmoli 我是看 spring boot commit 来学习 unit test 写法。单测和 ci cd 对框架来说更重要,比如升级依赖版本后,框架层的设计可能就不能按预期工作
|
43
Bingchunmoli 348 天前 via Android
@mgzu 可能更多情况是有其他人用非自己用能遇到问题或者角度或许才能考虑到一些事情和一些动力来源,
|
44
sunny2580839896 348 天前 via Android
我用若依,你说什么我不知道
|
45
changdy OP @sunny2580839896 哈哈 本来我是想让大家讨论下 众人拾柴. 不过可能大家都比较害羞.
|
46
dongci777 347 天前
学会写 starter ,然后把项目经常使用的操作封装成一个 starter 放在自己的私服下面,然后直接每次项目引入就好了,像你这样不得每次累死,而且还容易漏
|
47
fjdingsd 347 天前
我好奇,大家会滥用 @PostConstruct 注解吗?
|
50
jaylee4869 347 天前
swagger openapi
actuator endpoint |
51
cxk0 347 天前
这个帖子早该出来了~ 太帅了!逐条拜读,并做记录。 谢谢各位大佬!
|
52
DdDddDlush 346 天前
@SnowHall 先感谢回复。作为脚手架个人感觉比较重。也可能是我自己水平不行不太会剥离,想要一点更轻量的。
|
53
simanW 344 天前
楼主能提供个 demo 吗?感觉你这个初始化工作看着挺不错的
|
55
ccmjga 339 天前
https://www.v2ex.com/t/1001297#reply2
如果可以接受这个技术栈的话,可以上面这个脚手架。大家关心的测试、代码质量、工程结构等在脚手架中都有体现。 一些做法大家也可参考这个脚手架的实现。 @wxw752 @potatowish @changdy @finalsatan @DdDddDlush @mgzu @Bingchunmoli @mgzu @fjdingsd @simanW |
57
anakinsky 323 天前
@RotJun 依赖加进去就行啦,配置按需
``` <dependency> <groupId>org.zalando</groupId> <artifactId>logbook-spring-boot-starter</artifactId> <version>${logbook.version}</version> </dependency> ``` |
60
liuqitoday 308 天前
@changdy #54 楼主整理好了么 希望学习以下
|
61
shiloh595 131 天前
学习一下👍
|