springframeworkspring是一个J2EE APP应用程序框架,是一个轻量级的IoC和AOP容器框架,主要是管理javaBean生命周期的轻量级容器,可以单独使用,也可以是Struts框架! 在此插入图像说明(3359 img-blog.csdn img.cn/20200722132844804.png )? x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10, text _ a hr0 CHM6ly9ibg9nlmnzzg 4u bmv0L3 dlaazg t _ 70 )1) IOC控件反转,对象创建责任反转,在spring中BeanFacotory是IOC容器的核心接口XmlBeanFacotory提供了BeanFactory接口,通过获取xml配置文件数据来构成APP应用程序对象和对象之间的依赖关系。
spring有三种注入方式,一种是set注入,一种是接口注入,一种是构建方法注入。
2 )面向AOP切割的编程
AOP是纵向编程,如下图所示,业务1和业务2都需要共同的操作。 与其为所有业务添加相同的代码,不如编写一次代码,使两个业务可以共同使用此代码。
spring中面向切片的编程实现有动态代理和CGLIB两种方式,动态代理需要提供接口,CGLIB的实现由=继承。
3 )为什么要使用spring框架
在不使用spring框架之前,要在我们的服务层上使用dao层对象,必须在服务层上新建对象。
如下所示。
让我给你看一部分内联代码。
//dao层对象public class userdao { publicvoidinsert (user ) {}}//service层对象publicclassuserservice ) public void insert }存在问题:层与层之间的依赖。
使用框架后:
让我给你看一部分内联代码。
//dao层对象公共类用户{公共语音插入(user ) {}}//service层对象公共类用户服务} publicvoidsetuserdao (userdao userdao ) {this.userdao=userdao; }公共语音插入(useruser ) userdao.insert ); } }服务层要使用dao层对象,必须将其放置在xml配置文件中。 有关如何创建对象以及如何组合关系的信息,请交给spring框架来实现。
4 )框架的好处:
轻型容器框架没有侵入性
使用IOC容器,可以更容易地组合对象之间的直接关系,实现面向接口的编程,并减少耦合
AOP可以按照OCP开发的原则,更容易地进行功能扩展;
默认情况下,对象的创建是单实例,不需要在单实例模式下处理
5 )缺点:
业务功能依赖于spring特有的功能,依赖于spring环境。