From 222166689ad845993726693789dd0d411d5d8341 Mon Sep 17 00:00:00 2001 From: lroyia <814876716@qq.com> Date: Thu, 16 Dec 2021 17:48:15 +0800 Subject: [PATCH] =?UTF-8?q?'=E5=86=85=E5=AE=B9=E6=9B=B4=E6=96=B0'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- img/SpringBootConfig.jpg | Bin 0 -> 30870 bytes img/ideaPackage.jpg | Bin 0 -> 14350 bytes .../新兵作战指南(后端篇).md | 67 +++++++++++++++++- 3 files changed, 65 insertions(+), 2 deletions(-) create mode 100644 img/SpringBootConfig.jpg create mode 100644 img/ideaPackage.jpg rename 新兵作战指南(后端篇).md => 技术规范/新兵作战指南(后端篇).md (56%) diff --git a/img/SpringBootConfig.jpg b/img/SpringBootConfig.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fb535d25779508ca54288316cbd55b4dfc335c3e GIT binary patch literal 30870 zcmb@t1ymi&wkXcUic*1b250PVnFk!QCNvfMCI$-~Q2m}Jm9wYGkBOnDpkdaZ4 zksv52D5$6qGz@%940LpiC%Aan_~ay%6yzjiWH4HG1{gIf4H+3DKNBklCl3z~C4-=- z0G9|mHxJhzA|O;$R19U%7W99EP00RL8fT0Lb003Pb9HL0Wur>N|wC zK8M$1{rhrWxqp4rtq*UR|H{gI>KkBUOl{=$14GP*rt`Aah9C7uf%2Of*TC!L`-e>L z&pL-J3+I^$x!oE^->08dV+;7FUD1)cUUiwoP086B)Gf)LDV=0Ek2YoA3a-RRd-p%N zp%IICBPD6T{SzhkN%6@H>6QI=5l!{3NS1y5t_seA=gd)w_&##f^`;t6lqI`twLNv* zpYck+U&0fXtlmGW5R$e2$=xbjn^-WSo0$E!RuGQ0q79&W+c{MVl~+G8EP6}ye(JT3 zzIx+75)vhO8{CrL&e~`w=JdH{A%7SCZ_xn&PP*dIbMFw~b9i%czFilZsT`lj#u|}u zi#CG#KX|-KIZj`U{Zxx4+;_r4{_|m34Hlf$5o&FN;-q^8;C5vR7&r z*ZqTvJR>!&e_bHP<*#F*i2t9D1CR+i3#_paz>68pCj>yn0UGOCs|Ef-L9TVs54>6l z_+=<$G|jt^VI=*p?)<3+bH(T-uA0h+pt>)Wkstc-5a*Zm%qs z75Z$&xTpJ9i@fOMhjKgzybH%#AEv{^BJ+C0441FW82_U;kGw#iTblu|bfXe&W*3Iv zFAZ`_Yi7K0_!kaIWC-9ep(r+7z0KC-$*+OWuh@Olg@NhG(L*-!{D&pC>OZKUC(?Ct zwt4`nXJp$ttD}is-3J}Ik7O~u)Ymfk!Q49`uWv1z3Sq^+8For3}hjd_KE+jq&fE(HwogB0RU5S z)R*S~yKHdpW3J0Prt0I-_j08(q9zs0(0@xE%oPe^JnjQ+ZWvFa-miE1a(oM13v)g| zjb@l{9l|58|8Y>%@`}TsI9h*_zDmUtaR?8pEWzp42=H2`s|EBLXWG1@-CtFsA}P&N z|F`%M86Y8s_0#5Xpf~sP+lIAEqwig)D*7&l_NUxlvTrAvqgSm2H})Io+Rkc4l>@|x zT6UQyPIKyvLIA*s6+mZM$ollGv|=XLsneAAXvI(S+K(bINbE!A`M)FvAX?)#Ay#Mu zbnj#Ho*FkB8Hg_N`A!S8c%L8Vo?74wr;U8W94*7m3QW!5&bv_F!iN2Pkco> zzYTwqtr|N2cc1?kn=S%6LUqGCl?cH=w7x&^zrtU}IL?&}`r!Kpq5B-v&W|@&z`x%^szz5TZeo)p zA=3Htk(F;ONunorihmv~;zc-WeJIapc@~>wBL=@dzm$8EgzBoU^jP`- z8h17PxsA5~tQ+dao-N^i9vt>QMY`t`QL&$KPmwZ0{?OJHb^`!W^1G*_FX&g4DzQFF z<8^Y4^>z+ys=Dw_(4lKCwrc;0?J;_9AJIVqs)lmxEzL1F0Pd-hI_pB_W$?0oBwrXb5u|L#7ReAtm*w9J;V3X@TgPG%JBlgKJR#@=K2US;6BNuL- zv1!tybbQ2Z!4CA0NBl?kGA^xqQ3rtZOulv_HEBuHRR=0&Ue)Rw5UCoC-%Kpu7$~v6 zw$-hOmQkXq##6{Ht)7DeNXu$gACe{;-VUw$9q`zT92OhdM78*le0bv5X`8oT9@ADT zfERJF#r~&Hk0bXSr-Ua205|shaRoN##)YEf4Q5WG9Q-)Gm2b$?q@8D%IeUyq>vXcz9;969{3m#CI8 zz^P&FmPfyi)c4rhqt6ODw5cSUc*ye3RfDJ1}c+6kwxdZgW;YwzuF|lI{6LN z;1A{4B8D2M1I~R$fB1_pdA3Py_vrNgu*U#$s-n*{Z|feLTc4Pp;?Ykad7EwUHp_H< z*OaSNxtaMhSAy{vFB$;wosK(wj{V`(-4*N~V?W9*4RR5P;-7;_D=)kK+eZp&3Qa{ncY#zt=*w*rE{I3c_FXM5QF7=#2Cs zIpCnzpt`?#(p97`RD5(q>5=EceX6jmFbmX+xbC7ql>oqt4gf!#Q1>S8F`i1L?nd=4 z^ZNoQ0noo|0f2@v<9qbG^bp{c;8NA2{};s;&20+~5L$YX_j<`jUx4H_#prb`lioIzfG{5Uo+WvX`Y*@1U}+i3oB!j zuXsypPYcSC+0RoBA|Jb@$KX^|C~>g;?9s8Z-LVqX{a@qA$wWZEm^1(oJn}i%eGV`@ zw{fn?aJ837E!Q1jA?1wQ&w4e<34a{3oO$Iqm7FFC&?E|7MVzzchi6*<(OCe^rJ_ZV zyUo1~2?n4Ie9zzB^a<~7X8qFPaaNdf)Eu)~G|F~sJb2; z_%TKAHhpJLfg&}K;BeaRx!5HXvAqoVjr+t;&_q%?W}Kjl;=bw~ z^LLT+iJQ+8OD{~HLY?%RMR72)WKW#g@I4I--f+HFc2v^Me9dNH(E7%~{7-K0Fuzn@ zd%0h(Ye93l{H;c5PO;s^GNTjdLF%#mNJ++~_q>GF4!t0`z2VN4B9+yj*l^ypSaU{w z8^2lYNvTM{P9~4#JucUG!Dmghx)yQId#v@BE%xu@*o+M6hO=;96@J!_9kVbp;x}_D zJ`%N+=`uo_hy&|K4x(GjbP*E03yhpZKit_^$o+nd|J2LETn70~*uIuYYd2q+4vikW z4)3kw?Kt-c=E}DKonOh8iBYs8=5C)yuCsmjjkA)M5x-{9a#u<4U5-!$9AG%V6d`C?`~-Foi^yn z5p6+<^O9$5lcsSTPy98lSuG6%9i7q)P5p-{P7rx1`x(_O3>VIj60$PVr)PQna^AJ< z<|(Ij-Ez5^r4nRK+a}g}@+e8%-zCL(T(4gS?r54T3tq9qsRuu0P_`dPDq=M}R^xC| zGWK_lNf?+AKt{QBmonjl<{g_n8nwB$5Ps|XGM4WIxE({306Qb8iQ5ilMu z=ATRly=Q^`NKfA}ichUVj8~1NcoaX~S#>8cixIyH6T1jgUO;~$9TLKM(SY`Mf*CIT z5ya~ll{7f*2udCa7rS3|MLOC_>%!fHMA|{2Tn|4l9qGca-iFV&g1JFVM@{4^pI)I3 z$k7_vVm0#XBy@_`N5eiq;u!EIfBXW}XCJltZg*It$e*LCYG=S$qE?d4VY=7;5ciOF zIXLY{!qywi(0z$!Ny<-o$f3GXIJ?# zJkC3rXG|O{IaYcOPA1PAU8C`N2nK%x4Y!xtc4Q~U7Km7yC(bYOg6NNXPJZ@=G*PET zTbWM!>oWU@y7;esr$0QTuzX9sVcOo1bot;BK_@q8OSwBamvs60!n^;M{lUAYpZ?-o zZN^j+QjRJ=>lLC`v~A$bNE7zm9hz3bsLC;eqsjbfUf+FtiQQ7PvBJn>)SJWKy3m1A z&0p{R5-m#M(yl{)XqgN6#!XS1Gv1J*js^sbAmLh!1eKGTi|^V; zO@o#0c`uLfp9agneU}&tVWA+&(8(_W?ZGpuU86s|er{GbUB4zwPf0IG1N{=snRX{V zGN9$06!;O3C1>sX$_KC^-_&b1{N&~K*RBSeZ+aa4m%qLKY`ENB5|2{T`!N3Q+2?6P zWG;5n`_f${n1MZ4DQwW0C8SHZ)?#WxA{`njH!d@sgG46I(T*>i`@Hh!qSXfByxv#YOyYfDWBD+oZY2=B@RX6}W}y{qTxaA`%Lit1s?1K&qrF@%a&VkA;#8snf99 z(gvBPwG@HcT#wI@R20#MwOr64P_j5dyNR(shfkyWvRu}mablVjwm`?~bd8fe#=KOb zjQfNZ6)}|(uDC^%p5(dw8+a$2c9i6*eFeS_kbhy4c|vFxhnc@tZi*3A#%wWhmQvxd zxNMWOiVxnirWbh5T(6sa>zflOEyzB^Y#~0*jn1oJ$x9}@q?;`7YpX+0whBq0~H=?uO0X_MbtrgnXLt|n)whs zJ)djpzw{#)?{PrV(y^AyO%gxB;;=^tDoZvtCB6yaL$k$*mzktrbmVl$<5@+OxA((- z6f5#l3Xfhv#mU%wO3cs#hr^gT}#M3Ji(2d#iT>G*dkz_JS3q0L^qLDuQqin zWE*acUl($#;bteGUXM42+kv!Cv;OJLz1O?*;3CC>l(UmUh29FJbA}(s6v}33UZL`l zc136cZm5Y{lCRY$Q-{jz&&ovgrLo|(82O+)snudYNs9V z=<_fa@-ha>xlm9!1ea^mF{xyhe>k>KP9n|5+#bi+N{c8 z9ipf>(QiVamwm=dohgt;K>_f2pggym-jk~%w~%pHjcAQa9?H6O)Q@?Bik63A3-qE@ zbT?DQjwQi;n}x-T@sVX*h??uA(&NJC>y4)4EZQ1t(H;|%xw$UE-)RL~`-jRm=JVT& zNtl%x!WhKUcP~SQr)fnIp({Q-suYINf?oIbiAX7K`BNNCsN9f9NDqz;46D|(>Twdx zWMv)JcO-1obpX;FDKk-#@^iDFo6nt1krLWiUe3UtDp&H|9O3u=9_&30Id>iGB)&IO#(iWdS z#nBzLBl?%$b?)47Q&SseQuW!fUW%pNg5^83odUkZ*o-~x(Ce4Ud?in5uqv*R8Uzh* zL_}WfZjY^Trt0IkQFB=8Fs)iU625lND)uJhQKa=tu?S{+O zvtyo@lrApshsNgr&L#6&zgaj?=d$kf?v8u!NppFitgR(k&O2BrS(K1|Q#CD@)?}kU z@iK3MrQZKMTR_K_=}k7+Cy>GM_fjubqLFgYWB(+>@L6)nys0yHmg0)hVBUcjxfuTC zuL&;U6&?Y|V?25YqA7ADtHhO2sVoR@;u;8vNyb*QFQuZfVR>_sE{Ndhxi&V8j8yU=SGj&kp0CEer?;7tE;v#e-3Cz!B7`xg^ZYFaFwHJRatX zgT8$o7!g>KOT4XIfAMsfJkIj1lMh?se$#rJ@T*ae+c=)}fDGmd0!xj(h_3t8Nh0g) zw8Clwd}+osw!o%exOs#!54R85Q{pytwahv{6(^AQnqJiCO{7-Y(?08#P{BwSV4UEJ zFa0nW|J0ltgF+Q2)%PYy|MMt0H35+DOUe`hTF}3 zRL7AZH#a$B`Kn;_spumevhEu}zf+H^j}7Ghmv(s?xBa){x2f@^cl-N$BU`BoVsdv} z3PfbQ*A%Q#Qro%`&jy}6+sf+{fPnPx^Y}k{e$+9P6OMo2a$l_r07+(}4dd#uP zuLten%rD(W>1?7CEo>i(DJBv)Vv#{7A*-irf*%JpmwAVj*N*3xGx>L^f94hyL<8c{ z3@HO)p)=Yh;xAW5&n9vVKCR)L+PN(L23U=Gnub0$i)K#UWmer7avqSbpjAo0VM_JJ zMY+^S3;|;D00}7{7amhd?eypm)o9#x<&(nGpM^M6mgD-bsRd&Suku^5oaygWX&b}t zr}ZXb#F4+?yIP?LCk z6+)3e{rn;+qL)wLlO0(>Gzje_j(kDq{{pp7l4l`bH(SH8*gT`6X9qMBm#q6W<|Kfw zJ~8rz&L@x5fYtMrTQr+hEo<6OT_AZX>)yC+1J=moRs%M|IGKMggLmq)3Ri0M5-!P6 zyA5%SH!cMltI3t!fnD?ER;-Bw!oYXD&7@$Vz=-*SK9RJ+O=&&S-#~d=IIk9kowI05 zv^a)a<+BF~H=+J?OA5PAZRIgZ>^UgU5?W$hy|zlR&J;VN$XvLWpCU0cgZ7>@zU!PJ z2<~ONL{U2fv7o~|IuNYb6iMD|$eQ4A-HRuGrp5fF=14&bdEzHQzRFyp!{~2-@!YPX z;fXAU-wnd`7p(mGh|z6l#1+JyQ!It_T;UvcXI-HhpPCreX?3l*iuE)mJ|7;VwK{K8 z0?+GtwmSvAv^jNaS#)gohyH?v2Fi zVOw>>KBYcCwao^|w8LvNnNE@39d~|_iGgkSx_&-tMbECy1whO7z0g65D(1A#r?S1M z@cX4s)@#IhyjdwjrNIA;IUlENSQ6VRQYkuVjX=vc0^UE7nWecah6be83A0)&pxHe1 zng|7^PQXxi5&{Im_|a{QEWW58>a~$c*Tj_=y9Wjqtb9qQi>(ww9Kma^TkIpZb%?>r znn($_l6W7emg?pn>ye9Wjb^IzHZW|jFn!ctakBr{QX41mI!}d7M(gR+Hg9)qAWw(5 zbUzLPL__zfm_SxpyGc+2tzwQx3_UPW)!om*uPu1tPzezbawRqtJv%0h)S~>+Y80@z z1daODC&vq_WHFVYEtDBL|KE}{MC`{uqW*Z&pv&+Z zaH>Yxc_$5PriX`Hi_Ix-ZF07%T3e^FE2E=Z+c1QQ9KNHl~$jI7mRT3NSu+Yh0-&zeJHeihP^MO4A7DP zWFCn<)D%Z8ucsw-tJFSTPoey2IFkxA65T;u;?~~G(^GS9Fq$?tGko|B3s?Pdv5+qV~kCs7R^_GZ4zi{5iROA9fqO)l1m{V=H)Z!II`Or;FnhlTV6P z)1WFAlOe>e?F(tu<{y+72E1d?yNM= zWa1a5fBdwhJ|)`=6P8*bf41%RDuSOzx)!04 z;wO7(2`Bc$OuuF_zqOv);e3;RB{(F^?!YSO4i!BDs119Hu;UY z)*ZAG;J%G6Gug7gGHWFIj5J6Cdz-0J%hL&eqEH{NyFI4f_bq*!#8j4QspIMQ1HTeK zQf%sWUwG)1x#y>x__~Y?T+37r`GSqZj&CeK8tyYcM;~d2NoXoC2l{wL&346<>eabv{?4o#NZ`2p<1#=OKI|iSqIi($>6At zbk2^J@zm=gZcJqi5u3FTBIyDxS_7UKqbkcAJyZM?2e0v|r+?HMqUxcSD#CP~b**OFMi|W%D!f zB;?CX(1r;7_$nKZRa%28hdgq;$~jhbNG z_DRm{&b}X!tzXeC8EV`%kiED%UK0I)yNrqBL?+W7N=whE4!$8(pHmaQHsmxkFi;*h z^dSOJTkmsv_^s8M8E!I=rLDy(SDQlel)g*bPfHoU;=^F_Oi=9r=wAu%gi!&MZ#5Pm znm-o=(S}UEH(T|hUs`RP9onPcx#kWJ(J0ggT1l?<^p}|^8RXb{uPvaVmmEq{-Qlvn zJfqz0_)-A#x>F{SiA}yc$un$74cr*vQOkWhSMq2I70z?E`UBa^ZWTe`M1=&G0(sMy z=t9#Gte^RyQEYql9yBCWs$nUNri5reN4+jM8Xg68J0D=HdWtnBnqjAX{6%5^oP7%= z=O)z##Y3q`o;;bWrAOe@$7Eltj;ebetLEGe2ex^VjZ*2DJ9g7m8AdKVSQ)VWcA2BC z9%g|@4z^6KKq+y~eL=f1s~}W)HHSrJ7a0;M)b&99HL9|EJz{zmLluve^Dh*v)568J zs98=%Y1O7x8KAGzIh0+fvX4w1&kR$2^=d}jiCbKn{4MQCzN+X{Oe&rF&aEik_man^ z9FMm*4JAK}V*SXz%?-8#wU#+-+Be?4jD8P&_5Si5?OIz#its0CS`-||*C{vYabpK< zmfK`1KZ*^1)?Z(1i#zN72J*w~u&rqb`BZ49(63n5RIhh)JW1SE$hAVf<4|h+h#B5& zh!EUAa(5BUPIFX$7*umE?oiP}`3CqPAa_$M`pF^ndr*zhcglP1$sVXv=ceL}?-Bmu zsT^9@%nAW-*3TM*jsHLks$ub2D|&pYWn(51tQ2qQ?Jj&K7xdxR66njlM){X_H}^Rb z4@_?DxdBviej5Q-7!+SSeM2Apjlau8k+#|yGe-18kXnl+NZ{3%=!Kl9E_Nqk%|nuW zH$a8mXBbfu5ceppfR^7^co0PQoLh|t677t4eSAMpboGfpF4{1nE6|Ewh2XOzlI|f2 zzTq6mjGPGFZ_a*z;|`{iK)CSzc~@oVK*7cFCT;F6>O;66{kcoNx!$HARkw>Db6m+o zTCNE5hzEr;D7=!RPeOr0yyn+vp{zA*U!Pn~? zM0~X*MxuO$+BmA`p@S^u4`U2Wq8+z93qUk7Y(>065B(MAos`58j$n*14!3`0Gv0T) zE}??o3CvO{JUi1gQU+OHEVUiN-N=0n?Vs2b>Sv-FLrzOZ>6*$X18)HCd38avC zp>jbA9t#<@FTud{!ls=)%l#gh!Xxy{WUp%*GVAgbbu_tPe$zPd3U5tC!hORXX^04F zB*C-D-VwHg9?cGWyg=6f=#!^KIl{=-yE*VgeC_#96%p3GwvSgluE(7(zB1bn`oZXn z$OO0XTGs+JDD1Ys#>_cI`XIW*7=Bc2KfI~-e0PFyEm=y7N1pQQeWlmOe zO&ZyQAZH|}6)8u%Pv%8ra8JnBJ87m-U$5^(0}02WHAAL3YhIG`IZWls$k{(N!<9VN z>%hnT9PPPgz8awjuWWV^+C6oC5-vYC8&aA6k{6Vhs0HGfg~e28P)s2>&U7Zf1%>1& z?z+}ELDlK5?Bb?ly}J1<&eHq!+g|PyYiyE>PGzXISkZ(F5vT*OEdl1o}oKSL`W zXLW;lkd0@#vL(S@RuJ=rttO8@$1;bh%JNm$oTQyi-mKTU#l-04m7dnL+@o+n-LqW$ z(ogSS%-738;N)nIw5~8KmuMYGS)9SGs_h9R#6=Khw7cZm@6HEfOz~uVTc+()*xZ^< z;&r9cJ!#u`#tfBkSbKr3dpQ{9GD8=3*!6gR!t(g-1Q>(>Mnw77XQm(=;PLcC!yM`k z3r)G;fU6fb_0L^y|JR2T;#7bYAfR`QV2ob9$mATE8?*H+@^RR*q9S+19(Hxy{uyUjv}5hlF^f9Cf`e<0uuNV8F0yEWLzgp zQ>(dT+E8R+A;bW6de*8QA*$L9;*oPJo7r2*{R}F!Eg!Z)Su7|T4}Wc9*OWS*-nKm7 zmEaN92$0w}ZUQzsd9hCnP%Oo^_P$GYIqi8{;m* z7|O32RES#yz|-}uN=ddH&Ro@F&cjDKMJXAES{t;DgCKw}s?N0fL_0!EaVIb7)-41S zb|&zpsCX(wf1zOwW1aZ4awkT;V3q@(Rdm;}gU*DLww<&{#An_1f+GZ!M86gRVEFMZ zHdnkL<{Co+ozjQd9Un4%5#l@qa3N~K@HBtMGm?I0y?HQ-l;YWJDEjKr$YsLTI7mw3 z#|VGCEAb|0x25kRXqWW=UgYTeg2Dc<81MQdbi3q5P2>n_v%=pblsZN(>>2X@MTvQr zv`?R=DSz(&Og7jiZz$Bf!>!V{^q-dT_lVuBsBj}S^(^OkZHCi{PCO(gR$j7Lc*xQI zNpO2ZL7LRR(gx~4ED8^w$IqJxV1k?XCNJQ5M~WDFi^W;7A0WYU(fsU68qPbw2?>cy&Xq5$QjnoD7uZh=B{?B{B;^7-;y zUV<-epk!|aX5=H>roJS{kC@Sla3~3NlqEPUfp9hfD4_+yd!1@DJs|}{3?Llz_G|od z-(6|~8zQ^4gq6l2e(M-i-G<;CRo@=w&Q5}r^c@|7r{@HZ^D0f|2>%VF77@Ck`a}Y! zD0Yxpwp9QvnbmpaD!bqr9<0c_iYf%kqvPt`2e46DE`ww2xi?9)>6|HO4-h8=z%p

4`f!T0X%fa=5ky;{-@s|ZwP7tG{{oe7f+B& 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

U`;3rDFk1lkrsu>1g;F`2T;8m0yPDSznALNS> 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 literal 0 HcmV?d00001 diff --git a/新兵作战指南(后端篇).md b/技术规范/新兵作战指南(后端篇).md similarity index 56% rename from 新兵作战指南(后端篇).md rename to 技术规范/新兵作战指南(后端篇).md index c83b9d9..5ed6201 100644 --- a/新兵作战指南(后端篇).md +++ b/技术规范/新兵作战指南(后端篇).md @@ -1,5 +1,10 @@ # 新兵作战指南(后端篇) +> 拟稿:[黎润豪](/lirh)[(个人博客)](https://blog.lroyia.top) +> +>
版本号 1.0.0
+> + ## 目录 - [新兵作战指南(后端篇)](#%E6%96%B0%E5%85%B5%E4%BD%9C%E6%88%98%E6%8C%87%E5%8D%97%E5%90%8E%E7%AB%AF%E7%AF%87) @@ -46,6 +51,10 @@ - [git](https://git-scm.com/) - [TortoiseGit](https://tortoisegit.org/download/)(git乌龟,可选用其他可视化工具) +### Maven + +公司仓库配置请参考[maven-settings-demo.xml](../配置参考/maven-settings-demo.xml) + ## 配件准备(plugin) 插件主要都是在IDEA下的。 @@ -58,7 +67,7 @@ #### checkstyle -公司2021年中旬后开始,开始限制代码规范风格。具体配置请下载同目录下的[checkstyle.xml](checkstyle.xml)文件。 +公司2021年中旬后开始,开始限制代码规范风格。具体配置请下载同目录下的[checkstyle.xml](../配置参考/checkstyle.xml)文件。 #### MyBatisX @@ -86,8 +95,62 @@ IDEA社区版运行tomcat必装 ### 代码规范 +推荐遵循[阿里官方Java开发手册代码规范](https://github.com/alibaba/p3c) + ### 注释规范 -[Java文档注释规范倡议](Java文档注释规范倡议.md) +[Java文档注释规范倡议](../技术规范/Java文档注释规范倡议.md) + +### 文档规范 + +[Markdown文档排版规范.md](../技术规范/Markdown文档排版规范.md) + +### 数据库规范 + +[数据库设计规范_v1.0.4](../技术规范/数据库设计规范_v1.0.4.md) + +## 行军(debug) + +这是一个大佬阅读源码的[经验分享](https://www.bilibili.com/video/BV1sq4y1g7X1?t=3m57s),3分57秒开始讲debug技巧。 + +## 上战场(部署) + +### 全量打包部署 + +#### 1、切换环境配置 + +> 打包前需确认环境配置(如数据源,外部接口)是否正确。切勿发生将测试环境接入正式环境,导致测试环境向正式环境写数据的情况出现。 +> SpringBoot项目一般直接修改yml的引用即可![SpringBoot配置](../img/SpringBootConfig.jpg) + +#### 2、 打包 + +> 打包前应先清理maven的class缓存。有时候因为调试过程中的一些编译报错等奇奇怪怪的原因,导致maven的class缓存内容不是最新的class。为避免将错误的class文件打包,应先对目录进行clean。 +> ![打包](../img/ideaPackage.jpg) +> 命令行:`mvn clean | mvn package -Dmaven.test.skip=true` + +#### 3、备份 + +部署前,需将服务器上的现有运行包复制到备份存储的文件夹。以便新部署的项目程序有问题的时候回滚操作。 + +#### 4、部署 + +部署情况有两种: +①部署目录就在`tomcat`的`webapp`目录下 + +>将[第二步](#2%E3%80%81%20%E6%89%93%E5%8C%85)打包后的war包改名至正确的上下文路径名,然后将其放入`webapp`目录下,重启tomcat即可。 + +②部署目录被配置到其他目录 + +> 将war包进行事先解压,将解压内容替换到配置的部署目录中。 + +### 增量打包部署 + +## 军情报告(日报,周报) + +### 日报 + +一般在入职后的第二周,项目经理就开始要求你写日报。 + +### 周报 ## 常见问题