温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么简化Spring配置文件

发布时间:2021-08-26 15:57:39 来源:亿速云 阅读:123 作者: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