中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

怎么簡化Spring配置文件

發布時間:2021-08-26 15:57:39 來源:億速云 閱讀:136 作者:chen 欄目:編程語言

這篇文章主要介紹“怎么簡化Spring配置文件”,在日常操作中,相信很多人在怎么簡化Spring配置文件問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么簡化Spring配置文件”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

配置文件簡化

我厭倦一切配置文件繁重的框架。
***的情況是,框架提供極端靈活復雜的配置方式,但只在你需要的時候。

Spring提供了三種可能來簡化XML。隨著國內用戶水平的提高,這些基本的簡化技巧大家都已掌握。

1.autowire="byName" /"byType"

假設Controller有一個屬性名為customerDAO, 在Spring配置文件里查找有沒有名字為CustomerDAO的bean, 自動為Controller注入。如果bean有兩個屬性,一個想默認注入,一個想自定義,只要設定了autowire,然后顯式的聲明那個想自定義的,就可以達到要求。這就應了需求,在需要特別配置的時候就提供配置,否則給我一個默認注入。

還有一個更懶的地方,在最最根部的<beans>節點寫一句default-autovwrie="byName",可以讓文件里的所有bean 都默認autowrie。不過Rod認為開發期可以這樣,但Production Server上不應該使用Autowire。而我覺得那些自定義一次的地方比如TranscationManager應該詳細定義,而 Dao,Controller這種大量重復定義的bean就可以偷點懶了。

2.<bean>節點之間抽象公共定義和 Inner Bean

這太方便懶人了,想不到兩個獨立的XML節點都可以玩繼承和派生,子節點擁有父節點的全部屬性。***用的地方就是那個Transtion Proxy的定義。先定義一個又長又冗的父類,然后用子類去繼承它。

另外,還有一個Inner Bean的機制,可以把DAO寫成Proxy的內部類。為什么要寫成內部類?為了讓Proxy冒名頂替它去讓Controller Autowire。(詳見后面的示例)

3. 寬松的配置, To XML or Not to XML
據說Spring比Struts的配置寬松了很多,這就給人把東西從配置文件中撤回原碼中的機會。不贊成什么都往配置文件里曬,造成了Rich Information的配置文件,修改或者查看的時候,要同時打開Spring配置文件和原碼才能清楚一切。而我希望配置文件就集中做一些整體的配置,還有框架必須的、無需管理的冗余代碼。而一些細節的變化不大的配置和邏輯,就盡量別往里塞了。因此,Success/Fail View 的配置,不建議放在里面。

簡化后的Spring配置文件

1.Controller只剩下一句

  1. <bean name="customerController" class="org.springside.            bookstore.web.CustomerController" autowire="byName"/> 

2.DAO也只剩一句

  1. <bean id="customerDAO" class="org.springside.bookstore.dao.CustomerDao"/> 

3.Service類只剩下5行

  1. <bean id="customerManager" parent="baseTxService"> 

  2.        <property name="target"> 

  3.            <bean class="org.springside.bookstore.service.CustomerManager"/> 

  4.        </property> 

  5.    </bean> 

到此,關于“怎么簡化Spring配置文件”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

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

AI

古田县| 江川县| 巴彦淖尔市| 广宁县| 文登市| 新民市| 泰兴市| 岳西县| 阜南县| 五峰| 松滋市| 剑阁县| 无为县| 淮阳县| 新巴尔虎右旗| 新干县| 安达市| 双柏县| 武胜县| 田东县| 和林格尔县| 黄陵县| 涪陵区| 乌兰浩特市| 苏尼特右旗| 札达县| 舒兰市| 张掖市| 库伦旗| 高青县| 邵武市| 鄢陵县| 瑞昌市| 澄江县| 台湾省| 卢氏县| 焦作市| 晋宁县| 遵义县| 株洲县| 台北市|