spring架构感想

现实中的人都很无奈,都在忙着寻找能够简化程序开发的流程和提高开发效率的方法。在Java语言开发方面更是如此,Java语言以自身设计合理,轻巧,语法清晰而出名,再加上自愿开放源代码,使得Java迅速流行起来。如果不借助任何开发架构,大型应用程序也是可以开发出来的,但是常常这些代码结构混乱,维护非常复杂,使得程序的开发越到后面越复杂,越难进行下去,于是在J2EE领域出现了很多简化程序开发,提高开发效率的构架,像struts, webwork, tapstry, jsf,Ejb, spring, hibernate,ibatis等工具变的流行起来。
在J2EE领域中,struts+spring+hibernate已经成为事实的标准,在目前的市场中,很难有框架能够撼动这三者的组合。spring在J2EE开发中尤其重要,通常起着桥梁的作用,但是它的作用通常在应用中看不见,我们能够看到的就是有限的几个配置文件。这也是它为什么能够提高开发速度的原因。使用spring开发程序的好处很多:一:方面开发,提交效率,spring的IOC容器,使维护对象间的关系变得简单。二:Aop切面编程的支持。三:支持事物操作。四自身集成了很多优秀的架构。这四点在各种项目中都有所体现。
spring通常包括以下几个模块:核心模块,application context 模块, AOP模块,orm模块,web模块,spring MVC模块。当用户开发程序的程序一般都要把核心模块和application context模块放在项目里,它们是用来实现spring对象依赖的,它也是其它模块的基础.Aop主要是实现切面编程,现在也是一种很流行的程序开发方法。orm模块则通常是用来集成第三方持久化对象框架的,如果需要操作数据库或者像集成框架ibatis或者hibernate则需要包含此模块。web模块是用来开发web应用的,它通常用来管理beanFactory里的对象,并向web应用开发提供接口。spring MVC是spring自己提供的一个完整的MVC框架,其功能类似struts.
一个事情功能强大,集成了太多东西,对事物本身有时候不是什么好事,任何东西了,都会有一定的臃肿。spring在继承各种框架的时候,也是如此,使用了很多开源的工具,吸收优秀的软件工具,掌握其中的精髓是一件好事。学习spring对于新手而言,则不是一件很容易的事情,因为很多人都不知道要引入那些工具,总是会出现很多不知所措的异常,并没有向spring公司所希望的:在短时间内上手。所以spring公司还是应该要注意这一点,对于已经使用了spring很久的人来说,可以在很短的时间内完成很复杂的功能不是什么难事。
在开源软件社区里,各种架构都使用很多优秀的工具像dom4j,log4j,apache common等,这样就能把重心放在自己关注的程序中。但是如果每一种架构都使用很奇怪的第三方软件,那将不可避免的照成框架之间的矛盾。命名规范,产品升级中接口都是要注意的。用户Myeclipse的人应该知道,Myeclipse已经集成了spring和hibernate这两种架构,但是如果使用MyEclipse引入这两种框架,就会有包冲突问题,在MyEclipse7.0中只要将asm2.2.3.jar去掉就行了。所以说各种框架在开发的时候也要考虑别的框架所使用的工具,这一点对自己的发展也是非常好的。不会因为框架间矛盾而使自己在市场里发展走上绝路。尤其在一些公共的有影响力框架里,像这些struts,jsf,spring,hibernate,尤其重要。
sprin方面的教材已经非常多了,只要环境配置正确,包引入正确,很容易上手。作为一个良好的程序开发者,不应该只停留在使用框架上,还应该学习优秀的框架,掌握其中的精髓。spring就是一个非常优秀的代码,里面的代码组织很合理,设计思想也比较优越,如果有时间,可以深入到里面看一看,绝对能够提高自己编写代码和设计程序的质量。我们平时把主要精力都放在自己开发的代码上,很多时间都在修改自己的代码,这只能禁锢自己的思想,如果想要成长,想要发展,还是要定期看看优秀的源代码。Java平台方面的开源优秀源代码很多,值得我们仔细把玩。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值