Java最全面试题之Spring篇( 三 )


经典应用:事务管理、性能监视、安全检查、缓存 、日志等
AOP的实现方式?aop底层采用代理机制进行实现 。
  • 接口 + 实现类:spring采用 jdk 的动态代理Proxy 。
  • 实现类:spring 采用 cglib字节码增强 。
AOP中有哪些概念?①Joinpoint( 连接点):被拦截到的点 。在 spring 中,这些点指的是方法,因为 spring 只支持方法类型的连接点 。②Pointcut( 切入点):要对哪些 Joinpoint 进行拦截,即被增强的连接点 。③Advice( 通知/ 增强):拦截到 Joinpoint 之后所要做的事情,及增强代码 。④Introduction(引介):引介是一种特殊的通知在不修改类代码的前提下, Introduction 可以在运行期为类动态地添加一些方法或 Field 。⑤Target(目标对象):目标类,需要被代理的类⑥Weaving(织入):是指把增强应用到目标对象来创建新的代理对象的过程 。spring 采用动态代理织入,而 AspectJ 采用编译期织入和类装载期织入 。⑦Proxy(代理):代理类,一个类被 AOP 织入增强后,就产生一个结果代理类 。⑧Aspect( 切面):是切入点和通知(引介)的结合 。
在Spring中怎么定义类的作用域?当定义一个<bean> 在 Spring 里,可以给这个 bean 声明一个作用域 。它可以通过 bean 定义中的 scope 属性来定义 。当 Spring 要在需要的时候每次生产一个新的 bean 实例,bean 的 scope 属性被指定为 prototype 。一个 bean 每次使用的时候必须返回同一个实例,这个 bean 的 scope 属性被指定为 singleton 。

【Java最全面试题之Spring篇】


推荐阅读