spring基础入门知识

**

spring基础入门知识

**

在这里插入图片描述
企业级代码基本要求 高内聚低耦合

Spring 体系结构

	底层是核心容器.
		Beans
		Core
		Context
		springEl表达式
	
	中间层技术
		AOP
		Aspects
		应用层技术
		
	数据访问与数据集成
		Web集成
		Web实现


	基于Test测试

Spring 两大代理
Jdk动态代理 jdk需要接口的实现
Cglib动态代理 cglib 不需要接口的实现

AOP 相关概念

Aspect(切面)
Joinpoint(连接点)
Advice(通知)
Pointcut(切入点)
Introduction(引入)
Target(目标对象
AOP Proxy(Aop 代理)
Weaving(织入)

代理工厂类
ProxyFactoryBean 只能为一个目标创建代理 多个目标需要配置多次
BeanNameAutoProxyCreator 配置一次就可代理多个目标

AOP 方式
基于 xml方式 配置applicationContext.xml 文件
基于shema方式
基于shema+注解的方式

切⾯(Aspect):⼀个关注点的模块化,这个关注点可能会横切多个对象。事务管理是J2EE应⽤中⼀个关于横切 关注点的很好的例⼦。在Spring AOP中,切⾯可以使⽤通⽤类(基于模式的⻛格)或者在普通类中以@Aspect 注解(@AspectJ⻛格)来实现。

连接点(Joinpoint):在程序执⾏过程中某个特定的点,⽐如某⽅法调⽤的时候或者处理异常的时候。在 Spring AOP中,⼀个连接点 总是 代表⼀个⽅法的执⾏。通过声明⼀个org.aspectj.lang.JoinPoint类型的参 数可以使通知(Advice)的主体部分获得连接点信息

通知(Advice):在切⾯的某个特定的连接点(Joinpoint)上执⾏的动作。通知有各种类型,其中包括“around”、 “before”和“after”等通知。通知的类型将在后⾯部分进⾏讨论。许多AOP框架,包括Spring,都是以拦截器做 通知模型,并维护⼀个以连接点为中⼼的拦截器链。

切⼊点(Pointcut):匹配连接点(Joinpoint)的断⾔。通知和⼀个切⼊点表达式关联,并在满⾜这个切⼊点的连 接点上运⾏(例如,当执⾏某个特定名称的⽅法时)。切⼊点表达式如何和连接点匹配是AOP的核⼼:Spring缺 省使⽤AspectJ切⼊点语法。

引⼊(Introduction):(也被称为内部类型声明(inter-type declaration))。声明额外的⽅法或者某个类型的 字段。Spring允许引⼊新的接口(以及⼀个对应的实现)到任何被代理的对象。例如,你可以使⽤⼀个引⼊来使 bean实现 IsModified 接口,以便简化缓存机制。

⽬标对象(Target Object):被⼀个或者多个切⾯(aspect)所通知(advise)的对象。也有⼈把它叫做被通知 (advised)对象。既然Spring AOP是通过运⾏时代理实现的,这个对象永远是⼀个 被代理(proxied)对象。

AOP代理(AOP Proxy):AOP框架创建的对象,⽤来实现切⾯契约(aspect contract)(包括通知⽅法执⾏等功 能)。在Spring中,AOP代理可以是JDK动态代理或者CGLIB代理。注意:Spring 2.0引⼊的基于模式 (schema-based)⻛格和@AspectJ注解⻛格的切⾯声明,对于使⽤这些⻛格的⽤⼾来说,代理的创建是透明 的。

织⼊(Weaving):把切⾯(aspect)连接到其它的应⽤程序类型或者对象上,并创建⼀个被通知(advised)的对 象。这些可以在编译时(例如使⽤AspectJ编译器),类加载时和运⾏时完成。Spring和其他纯Java AOP框架⼀ 样,在运⾏时完成织⼊。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值