- 作者:小萬
- 發(fā)表時間:2021-09-24 14:27
- 來源:未知
相信許多程序員在看別人寫的代碼的時候,會有懷疑人生的感想,面對一堆天書一樣的代碼,很難摸清作者的思路,最后選擇了重構(gòu),如果你認同上面這個作法,說明了兩個問題:要么原來的開發(fā)者技術(shù)菜、要么你技術(shù)菜。
企業(yè)級項目的開發(fā)不是一個開發(fā)人員就能完成的,開發(fā)過程中往往會有一些需求變更、人員調(diào)動,所以代碼的編寫規(guī)范非常非常重要,你要確保項目交接后,后續(xù)開發(fā)人員可以看懂你的東西,知道如何進行后期的維護和功能迭代。
最近在看公司項目源碼(Java)的時候,發(fā)現(xiàn)項目的結(jié)構(gòu)非常清晰,后期維護非常便捷,原因就是運用了很多巧妙的開發(fā)技巧,在這里也和大家分享一下,希望對你們有幫助。
這是連接本地MySql數(shù)據(jù)庫的字符串,這句話看起來沒有問題,但是大多數(shù)企業(yè)項目會把數(shù)據(jù)庫獨立出來,使用數(shù)據(jù)庫一體機或遠程數(shù)據(jù)庫,這時候就需要修改上面的IP了,如果項目少這樣寫沒什么問題,但是如果項目多了,豈不是每個項目都要去修改,這樣顯得非常不智能,所以解決方案來了:
首先介紹一下hosts文件,它的作用就是將一些網(wǎng)址域名與其對應(yīng)的IP地址建立一個關(guān)聯(lián),相當于本地的DNS域名解析器,當用戶訪問一個網(wǎng)址時,系統(tǒng)會首先從hosts文件中尋找對應(yīng)的IP地址,一旦找到,系統(tǒng)會立即訪問對應(yīng)的IP,如果沒有找到,則系統(tǒng)再會將網(wǎng)址提交DNS域名解析服務(wù)器進行IP地址的解析。
與之前的不同之處在于,將127.0.0.1的IP地址改成了變量名mydb
接著我們來修改hosts文件,打開hosts文件其實你可以看到,平時我們使用的localhost其實是默認解析到IP127.0.0.1上的,我們可以在文件最下面添加這樣一行配置:
大功告成,運行項目你會發(fā)現(xiàn)一切正常,這就是將IP地址變量化的方法,如果之后公司要求將數(shù)據(jù)庫遷移到其它地方,只需修改一下服務(wù)器的hosts文件即可,服務(wù)器上面所有的項目就能正常連接數(shù)據(jù)庫了,是不是很方便呢
在我們的開發(fā)中經(jīng)常會有一些需要預(yù)先定義好的變量或者常量,比如數(shù)據(jù)庫連接配置、Sql語句等等,如果把它們寫死在代碼里面,會顯得很不靈活,因為Java是一種編譯型開發(fā)語言,修改代碼需要重新編譯和部署,于是我們可以使用這種方法——將變量存放到配置文件中。
這樣如果我們修改了變量內(nèi)容,也不需要重新編譯,像Spring、Mybatis等大多是Java框架都是利用這種方式來工作的。
這樣我們就可以通過Properties提供的方法來獲取相應(yīng)的配置了,如:
這是通過classpath來獲取配置文件,但是要求配置文件必須放在classpath中,而且需要注意的是,如果你將項目打包成jar包,配置文件也會被一起打包,沒辦法對文件進行修改了。
if條件判斷(7) 使用靜態(tài)代碼塊初始化靜態(tài)成員(8) 使用整型處理金融數(shù)據(jù),將浮點值轉(zhuǎn)為整型進行計算,避免浮點值的精度偏差(9) 使用
Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
百戰(zhàn)程序員_ Java1573題 QQ群:603 掌握80%年薪20萬掌握50%年薪...
夜場。 夜場是貓妖最愛呆的地方,這里燈光旖旎,人影搖晃,炫目的霓虹跟刺耳的音樂交纏在一起,混合著酒的香氣,碰撞出糜...
上海轄區(qū)內(nèi)周邊地區(qū)騎過以后,杭州很自然成為一個選項,國慶開始前的陰雨天讓這事懸而未決,國慶那天在宿舍宅了一天后,不...