|
java自学网只用事实说话,上案例:
2 C. x- ^4 h8 o/ c* B5 {properties方式:
- d9 ~ w; O) Q! Q0 i2 d) ^ wapplication.properties3 c, _5 s2 E ]$ X) \* a+ ]
spring.profiles.active=prod* |; c, r, g9 L, O! _* v
0 A& h7 q8 S* v
application-dev.properties3 v! ~8 p3 [# {
server.port=8090 R d" r- A) E; B1 T, Y: W
; ], L* A. w; H: r" {1 ^( a/ Y" g4 H% k/ D
application-test.properties
, Y3 A3 m2 z' e8 t- {! s. |7 l8 Aserver.port=8070
8 L: n: h' o& D1 T* d4 \
8 J( J3 i/ R5 ?! `: F
2 g( Y. J: N) f2 k5 M; M( `application-test.properties7 _* m# y8 K, f0 X/ F) C: T0 F
server.port=80807 \/ B* i( J D$ }* X. a. U
" {! U7 c7 K8 i8 h) r4 e9 \
0 \6 j" B! a: l
yml方式:
7 D" n" j n% fapplication.yml
3 Z e2 ^9 O# A0 H ^server:4 _8 {4 b5 ]0 g- E8 d/ `
display-name: BootCrawler7 Y. P2 G6 ^, @- b3 i) [/ T
spring:4 k: B6 R Q8 }9 t" r6 _
application:
9 Q# F& ~, [* S/ T8 p8 a name: BootCrawler
5 h7 l# e, {- ?$ c4 }( D+ @, A C% r profiles:
5 U" A# @) d5 ]/ ? active: dev
' o; d5 g9 a- k- q5 B, B) ~% q! y& C
8 Z( U% |! R7 H, V( napplication-dev.yml4 `3 @# n+ y' a/ f6 {; {4 S+ a
server:/ K A7 w" b* d
port: 8090
: d( Z7 _7 r. g7 V. p$ L
8 c: _- t0 r9 T Happlication-test.yml
' N5 f7 s# q/ @4 k( Z6 wserver:- b7 V. w. q8 _* a' Q
port: 8090
/ I9 o" }* G# |
/ o2 v( c# J3 j0 lapplication-prod.yml
V- z4 B/ Z; G8 j5 @server:3 k6 q/ N: H/ @/ z% _# N
port: 80805 L$ l1 H& @: p/ Q
2 X, a9 b' t, O: L以上两种方式都是可行的,目前yml的实现方式被使用的比较的广泛,因为他有一定的层次感,并且代码量比较的少。3 R0 ^1 ]$ K, W- E4 D, p
那么为问题来了,如果两种方式都同时存在的话 spring boot会使用哪一种呢?2 d- {& \$ p4 ?6 d
揭晓答案:properties优先% d& d4 k! z3 n
. {$ ^. \" M6 n- i E- q% a. i9 d
" \1 k" f8 E5 _% z |
|