欢迎来到天天文库
浏览记录
ID:47508308
大小:69.00 KB
页数:7页
时间:2019-09-11
《Spring原理讲解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第22讲Spring原理本讲目标:Ø掌握Spring依赖注入的原理一、spring简介ØSpring是一个开源框架,RodJohnson创建。基于控制反转(InversionofControl,IoC)和面向切面(AspectOrientedProgramming,AOP)的容器框架。Spring致力于J2EE应用的各层的解决方案,而不是仅仅专注于某一层的方案。可以说Spring是企业应用开发的“一站式”选择,并贯穿表现层、业务层及持久层。然而,Spring并不想取代那些已有的框架,而与它们无缝地整合。Ø目标:使现有技术更加易用,简化企业开
2、发。Ø内容:依赖注入容器,AOP实现(声明式事务),DAO/ORM支持,Web集成Ø使用Spring好处:ü降低组件之间的耦合度,使各层间松耦。ü可以使用容器提供的众多服务,如:事务管理服务、消息服务等等。ü非侵入性,对SpringAPI的依赖减少到最低。üAOP技术,很容易实现如权限拦截、运行期监控等功能。ü提供众多辅作类,加快应用的开发,如:JdbcTemplate、HibernateTemplate。ü对于主流的框架提供集成支持,如:JDBC、Hibernate、Struts等,更便于开发。Spring框架总体架构图一、依赖注入1.依
3、赖关系(Dependency)对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。依赖一般情况下是以下几种情况之一:a、ClassA中某个方法的参数类型是ClassB; 这种情况成为耦合;b、ClassA中某个方法的参数类型是ClassB的一个属性; 这种情况成为紧耦合;c、ClassA中某个方法的实现实例化ClassB;d、ClassA中某个方法的返回值的类型是ClassB;如果出现了上述四种情况之一,两个类很有可能就是“依赖”关系。依赖关系(Dependency):是类与类
4、之间的连接,依赖总是单向的。依赖关系代表一个类依赖于另一个类的定义。2.IoC控制反转(InversionofControl)所谓控制反转就是应用本身不负责依赖对象的创建及维护,依赖对象的创建及维护是由外部容器负责的。这样控制权就由应用转移到了外部容器,控制权的转移就是所谓反转。publicclassUserBizImpl{privateUserDaouserDao=newUserDaoImpl();publicvoidsave(Useruser){userDao.save(user);}}userDao是在应用内部创建及维护的。3.依赖注
5、入(DependencyInjection)当我们把依赖对象交给外部容器负责创建,那么UserBizImpl类可以改成如下:publicclassUserBizImpl{privateUserDaouserDao;//通过构造器参数,让容器把创建好的依赖对象注入进UserBizImpl,publicUserBizImpl(UserDaouserDao){this.userDao=userDao;}//也可以使用setter方法进行注入publicvoidsetUserDao(UserDaouserDao){this.userDao=user
6、Dao;}publicvoidsave(Useruser){userDao.save(user);}}所谓依赖注入就是指:在运行期,由外部容器动态地将依赖对象注入到组件中。(这里通过构造器注入UserDao)1.spring实现依赖注入Ø运行类库方法一:到http://www.springsource.org/download下载spring,然后进行解压缩,在解压目录中找到下面jar文件,拷贝到类路径下distspring.jarlibjakarta-commonscommons-logging.jar方法二:Hibernate添加
7、spring支持项目右击—myeclipse—addspringcapabilitiesØ添加spring的配置文件8、/www.springframework.org/schema/beans/spring-beans-2.0.xsd">该配置模版可以从spring的参考手册(d
8、/www.springframework.org/schema/beans/spring-beans-2.0.xsd">该配置模版可以从spring的参考手册(d
此文档下载收益归作者所有