亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

xml配置的優缺點以及和Spring注解的區別

發布時間:2020-05-27 10:21:28 來源:億速云 閱讀:332 作者:Leah 欄目:編程語言

今天小編就為大家帶來一篇介紹xml配置的優缺點以及和Spring注解區別的文章。小編覺得挺實用的,為此分享給大家做個參考。一起跟隨小編過來看看吧。

Xml優點

1:xml是集中式的元數據,不需要和代碼綁定的;

在我們開發中,xml配置文件和代碼類是區分開的。不需要綁定到代碼中

2:使用xml配置可以讓軟件更具有擴展性;

比如,我們在spring中,我們不想使用接口而是想用接口的實現類,這個時候只需要修改xml配置中bean的class值就可以了。

3:對象之間的關系一目了然;

比如,我們在基于xml配置讀取配置信息,如下圖:

xml配置的優缺點以及和Spring注解的區別

編輯

從xml結構中,我們就可以看出,在popertyPlaceholderConfigure類里面有個locations的屬性,而且是list集合。

再比如,使用xml配置數據源的是:

xml配置的優缺點以及和Spring注解的區別

編輯

DataSource對象的屬性一目了然。

4:xml定義:可擴展標記語言,標準通用標記語言的子集,簡稱XML。從這個定義中我們可以發現,xml最大的優勢就在于,開發者(程序員)能夠為軟件量身定做使用的標記,使得xml通俗易懂;

5:成熟的校驗機制,來保證正確。可以使用Schema或者是DTD來對xml的正確進行校驗。

6:基于xml配置的時候,只需要修改xml即可,不需要對現有的程序進行修改。

7:容易與其他系統進行數據交互。數據共享方便

Xml缺點

雖然上面列出了很多優點,但是xml也有缺點

1:應用程序中如果使用了xml配置,需要解析xml的工具或者是是第三方類庫的支持;

2:解析xml的時候必然會占用資源,勢必會影響到應用程序的性能;

以java為例,無論是將xml一次性裝置到內存中,還是一行一行讀取解析的,都會占用資源的。

3:xml配置文件過多,會導致維護變得困難

4:在程序編譯期間無法對其配置項的正確性進行驗證,只能在運行期發現。

5:出錯后,排錯變得困難。往往在配置的時候,一個手誤就會出現莫名其妙的錯誤(雖然事出必有妖,但是排查真難);

比如,xml配置bean信息的時候,如果class的值帶有空格,這種不好檢查的,是比較麻煩的。排查起來很費事。

6:開發的時候,既要維護代碼又要維護配置文件,使得開發的效率降低;

7:代碼與配置項之間有時候會存在很多“潛規則”.改變了任意一方,都有可能影響到另一方的使用。這是個大坑

比如:自定義的標記,如果其他開發不清楚這些的話,修改了無論是代碼還是xml的配置,都會導致程序不能正常運行。

8:開發工具對xml的驗證支持的不是很好。

比如idea,對xml正確性,如果是自定義的,驗證就不是很好。

說完xml的優缺點,我們在來看看注解的優缺點

注解優點

1:注解的解析可以不依賴于第三方庫,可以之間使用Java自帶的反射

2:注解和代碼在一起的,之間在類上,降低了維護兩個地方的成本

3:注解如果有問題,在編譯期間,就可以驗證正確性,如果出錯更容易找

4:使用注解開發能夠提高開發效率。不用多個地方維護,不用考慮是否存在“潛規則”

注解缺點:

1:修改的話比較麻煩。如果需要對注解進行修改的話,就需要對整個項目重新編譯

2:處理業務類之間的復雜關系,不然xml那樣容易修改,也不及xml那樣明了

3:在程序中注解太多的話,會影響代碼質量,代碼簡潔會有影響

4:如果后來的人對注解不了解,會給維護帶來成本

5:注解功能沒有xml配置齊全

簡單總結下兩者優缺點比較

注解:

優點:

簡化配置

使用起來直觀且容易,提升開發的效率

類型安全,容易檢測出問題

缺點:

修改起來比xml麻煩

如果不項目不了解,可能給開發和維護帶來麻煩

Xml:

優點:

把類與類之間松解偶;修改方便;容易擴展

容易和其他系統進行數據交互

對象之間的關系一目了然

缺點:

配置冗長,需要額外維護;影響開發效率

類型不安全,校驗不出來,出錯不好排查

注解簡單概括:寫起來比較簡單、方便,看起來也簡潔,但是修改麻煩

Xml配置概括:寫起來比較靈活、修改方便,但是寫和維護麻煩

以上就是xml配置的優缺點以及和Spring注解區別的詳細內容了,看完之后是否有所收獲呢?如果想了解更多相關內容,歡迎關注億速云行業資訊!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌兰县| 东山县| 甘泉县| 曲沃县| 东明县| 周宁县| 佳木斯市| 阿坝| 忻城县| 沂南县| 台中县| 日喀则市| 老河口市| 莫力| 清远市| 彭水| 长春市| 吉隆县| 高清| 宿迁市| 西华县| 英吉沙县| 阿拉善盟| 蓝山县| 焦作市| 南雄市| 蒲江县| 南川市| 梅州市| 松阳县| 阿拉善右旗| 乌兰浩特市| 兴化市| 焉耆| 许昌市| 郯城县| 永新县| 武强县| 拉孜县| 十堰市| 改则县|