Excel不相邻列如何打印在一起-英雄云拓展知识分享
146
2023-10-25
【摘要】 本书摘自《Java+EE应用开发实践教程》一书中第4章,第1节,由涂祥著。
第四部分 综合应用开发
实验十二 Spring 4 开发
一、实验目的
1.了解 Spring容器的7大模块。
2.掌握 Spring开发环境的搭建。
3.理解并掌握 Spring 中的AOP、IoC和DI 的概念。
4.掌握Spring容器的核心开发技术。
二、基础知识
1.Spring框架。
简单来讲,Spring是一个轻量级容器框架。其内部包含7大模块,如图12-1所示。 在Spring框架下实现多个子模块的组合,这些子模块之间可以彼此独立,也可以使用其 他框架方案加以代替,Spring希望为企业应用提供一站式的解决方案。Spring的核心思想包括IoC(控制反转)、DI(依赖注入)和 AOP (面向切面编程)。
(1)IoC(Inversion of Control,控制反转)的目的是使程序松耦合。可以不必像以往主动地去新建(New) 一个对象,而是在程序运行时依据 Spring的配置文件动态地创建 和调用对象,即把控制权转交给Spring容器,由容器根据配置文件去创建实例 bean,并 构建各个实例 bean之间的依赖关系。
(2)IoC可以根据配置文件动态创建一个对象,如果该对象的调用依赖于其他对象 时,就需要通过 DI(Dependency Injection,依赖注入)来实现了。例如,如果要创建 Student类,发现Student类有个属性是Score类,而同时 Spring的 Spring context(应用 上下文)组件,统一创建和维护各种Bean,包括 Bean之间的依赖关系,而 Spring 对于类 之间的依赖关系,会自动进行逐级处理,所有的依赖项都是通过属性注入的方式进行解 决。也就是为了创建 Student类,会自动先创建 Score类的对象,并以属性注入到 Stduent类中。这种使用将需要的值注入属性的做法来完成类的完整地创建,就是依赖 注入。
(3)AOP(Aspect Oriented Program,面向切面编程)在程序运行时或者在代码编译 时、类加载时,动态地将代码切入到指定的类方法以及指定位置上的编程思想,就是面 向切面的编程。其中 Spring中的 AOP 思想是在程序运行时进行的切面编程,也可以像 AspectJ那样在代码编译时、类加载时实施切面编程。
2.IoC容器创建 bean。
传统程序通常采用New 方法和反射机制实例化对象,但 Spring在 IoC 容器采用配 置文件和反射机制来实例化 bean。Spring IOC实例化 Bean的方法有如下3种。
(1)调用构造器创建 bean实例。
(2)调用静态工厂方法创建 bean实例。
(3)调用实例工厂方法创建 bean实例。
3.AOP 术语。
(1)连接点(Jointpoint):表示需要在程序中插入横切关注点的扩展点,Spring 只支 持方法作为连接点。
(2)切入点(Pointcut):选择一组相关连接点的模式,即可以认为连接点的集合。
(3)通知/增强(Advice):是在拦截连接点后执行的行为,通知同时提供了在AOP 中 需要在切入点进行的手段。包括前置通知(before advice)、后置通知(after advice)、环绕 通知(around advice)、异常通知 (AfterThrowing advice)、返回通知(fterRunning advice)。
(4)方面/切面(Aspect):横切关注点的模块化,可以认为是通知、引入和切入点的 组合。
(5)引入(Introductions):也称为内部类型声明,为已有的类添加额外新的字段或方 法,Spring允许引入新的接口(必须对应一个实现)到所有被代理对象(目标对象)。
(6)目标对象(Target Object):需要被织入横切关注点的对象,即该对象是切入点选 择的对象,需要被通知的对象。由于Spring AOP 通过代理模式实现,这个对象永远是被代理对象。
(7)织入(Weaving):织入是一个过程,是将切面应用到目标对象从而创建出 AOP 代理对象的过程,织入可以在编译期、类装载期、运行期进行。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~