zgqq
V2EX  ›  Java

选择文件配置还是代码配置?

By zgqq at 2019 年 11 月 16 日 · 3896 次点击

比如 spring 之前实例化 bean 基本用的都是 xml,后面引入 @Configuration 之后,可以说是把配置转移到代码上, 但是我发现把所有配置都写在代码上好像比 application.yml 搜起来方便一点,不用经常跳去文件看配置的值,你们觉得哪种比较好?

7 条回复  •  2019-11-17 09:53:09 +08:00
CoderGeek
   1
CoderGeek  
   2019 年 11 月 16 日
约定大于配置,但是有的时候比如说你用着 yml 用着 @Configuration

也可以抽.xml 有些 rpc 调用啊,还有一些 mq 消费有可能 xml 文件反而更好维护
CoderGeek
   2
CoderGeek  
   2019 年 11 月 16 日
还有啊 你用的开发工具应该都会把 yml 或者 properties 的值给你显示出来啊 都有的功能
chendy
   3
chendy  
   2019 年 11 月 16 日
抽配置文件,主要是为了能够在不同的环境中使用不同的配置
也就是说如果配置在不同环境下是一样的,就没有抽到配置文件里的刚需了
另外就是配置文件里的东西一般不需要频繁改频繁看…
cmingxu
   4
cmingxu  
   2019 年 11 月 16 日
根据 12 法则( twelve factors)来看,配置最好是来自命令行和环境变量,尽量避免 xml 这种文本操作起来麻烦的配置方式。 运维会感激你的。
zgqq
   5
zgqq  
OP
   2019 年 11 月 17 日
@chendy #3 代码层次很容易实现,不同环境不同配置
chendy
   6
chendy  
   2019 年 11 月 17 日
@zgqq 但是 spring 有内建的 profile 机制可以切环境,为啥还要手写…
Takamine
   7
Takamine  
   2019 年 11 月 17 日 via Android
根据部署环境和部分实际业务情况问题变动大的(中间件地址配置,动态刷新的数据...)抽出来放到配置文件,引入的插件之类自身的配置可以 @Configuration。
© 2026 V2EX · 42ms · 3.9.8.5