Spring使用中需要注意的地方

最近再一次阅读了一些Spring的资料,对Spring有了一些新的认识。回想自己曾经写过的一些Spring相关的程序片断偶有所得,于是记下了一些心得。

 

使用Spring时注意得几点:

 

第一,   不要迷信

Spring项目的创始人(我们伟大的……你打我干什么?不打你才怪,不是说不能迷信吗?)也认为设计的优秀要远远重要于使用的技术。所以不要认为选择了Spring就能够保证我们的系统拥有金刚不坏体。可是国内却往往把使用了某某先进技术作为招牌来用,我从来不认为使用了好的技术的项目本身就一定会是成功的。

第二,   因题施法

对于具体的情况使用不同的解决办法。Spring对于一个从无到有的项目来说绝对是一个不错的选择,但是对于一个已经存在了数据结构或者陈旧代码的项目来说中途把它加进来能够起到的作用有限。

往往与Spring同时使用的还有HibernateStruts这两个家伙。Struts暂且不提,毕竟人家fans多,我怕死。Hibernate这个东西也是被很多人捧的上天的家伙,可是这个玩意不是万能的。Hibernate近乎完美的封装了底层数据同步的操作,在开发上可以为我们节省太多的时间。但是完美本身就是缺点,Hibernate完美是有代价的,它为了完美付出的最大代价就是“性能”。不信的Hibernate拥护者可以自己作个测试看看,它封装之后的操作要比JDBC编程方式下慢多少倍。封装完美就无法对于SQL语句优化,如果你的数据库是一个已有的,那么使用Hibernate只会给你带来无穷无尽的麻烦。

所以使用之前考虑好你的系统的复杂程度,如果你的系统十分简单,没有那么多相互依赖的bean的话,我们无须使用Spring

第三,   尽量使用set方法的注入模式

我见过很多的Spring相关的代码,发祥对于BeanFactory的使用方式基本分为两种,一种是获取了BeanFactory实例然后生成需要的bean;另外一种是使用set方法的注入实现。

我奇怪的发现很多人喜欢获得BeanFactory实例然后再生成需要的实例,我觉得这样做已经违背了Spring的使用原则——尽量减少模块之间的依赖关系。因此我觉得使用set方法的注入模式才是正确的选择,至少这样的代码看起来要更加优雅。

第四,   慎重的选择SpringMVC作为表现层

Spring是个好东西,但是并不代表它全部适合你。至少我觉得SpringMVC就不适合绝大多数情况,SpringMVC十分优雅,但是它的优雅有些过分了。就像一个过分注重理论并且有着极高的学术地位的专家,这样的专家并不一定会是一个能够创造出很多价值的程序高手。

SpringMVC的学习代价高,使用起来虽然功能强大,但是却无法熟练的应用。所以我一般不会选择使用这样一个过分注重设计的东西,设计要适当不要过渡。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值