当前位置:文档之家› 2020年全国计算机等级考试二级JAVA重点内容

2020年全国计算机等级考试二级JAVA重点内容

2020年全国计算机等级考试二级JAVA重点内容
2020年全国计算机等级考试二级JAVA重点内容

全国计算机等级考试二级Java 重点内容学习是要持之以恒的一件事,坚持就是胜利! 以下的全国计算机等级考试二级Java 重点内容,希望对大家有所帮助,更多信息请关注!

1. AOP 的概念及优点

AspectOrientedProgramming 面向方面编程. 面对象编程的关注点是对象, 面向方面编程以面向对象编程为基础, 关注点是切面, 切面组件可以作用在若干目标对象的方法上, 封装了具有通用性的一些处理.例如日志记录,事务处理,异常处理等等.

面向方面编程优点: 将共通处理封装成了一个独立组件,利用配

置形式作用在了某一批目标对象上,实现组件的重复利用, 将切面和目标对象解耦, 实现了低耦合应用.

*a. 切面(Aspect) 封装了共通处理的组件, 可用于切入到目标对象的处理方法中

*b. 切入点(Pointcut) 用于指定目标对象和方法的一个表达式. 是连接点的集合. 连接点是切面组件与某一个目标对象方法的作用点, 例如方法调用和异常发生

*c. 通知(Advice) 用于指定切面功能切入目标对象方法的位置. 例如切入到目标方法调用之前, 目标方法调用之后等.

通知类型:前置通知,后置通知,环绕通知,最终通知,异常通知try{ // 执行前置通知

// 执行环绕通知-- 前置

执行目标对象方法

// 执行环绕通知-- 后置

// 执行后置通知

}catch(Exceptionex){

// 执行异常通知

}finally{

// 执行最终通知

}

d. 目标对象(Target)

需要使用切面功能的,被切入的Bean对象.使用切入点表达式指定

e. 动态代理(AutoProxy)

在Spring采用了AOP之后,从容器取出的目标对象是一个动态代理类型,调用代理对象方法时,代理对象会调用切面功能和目标对象功能.

动态代理类生成技术:

有接口的目标对象采用JDKProxy技术.

没有接口的目标对象采用CGLIB技术.

2. 切入点表达式的定义

1) 方法限定execution

execution( 修饰符?返回类型方法名(参数类型)throws 异常?)

a. 匹配https://www.doczj.com/doc/467683811.html,erDAO 的save() 方法

execution(*https://www.doczj.com/doc/467683811.html,erDAO.save(..))

b. 匹配https://www.doczj.com/doc/467683811.html,erDAO 的所有方法

execution(*https://www.doczj.com/doc/467683811.html,erDAO.*(..))

c. 匹配https://www.doczj.com/doc/467683811.html,erDAO 的所有publicvoid 方法

execution(https://www.doczj.com/doc/467683811.html,erDAO.*(..))

d. 匹配.tarena 包下所有类型的所有方法

execution(*.tarena.*.*(..))

e. 匹配.tarena 包下及其子包所有类型的所有方法

execution(*.tarena..*.*(..))

f. 匹配UserDAO中有一个参数并且是String类型的方法execution(*https://www.doczj.com/doc/467683811.html,erDAO.*(https://www.doczj.com/doc/467683811.html,n

g.String))

2) 类型限定within within( 类型)

a. 匹配https://www.doczj.com/doc/467683811.html,erDAO的所有方法within(https://www.doczj.com/doc/467683811.html,erDAO)

b. 匹配.tarena包下的所有类的所有方法within(.tarena.*)

c. 匹配.tarena包下及其子包的所有类的所有方法

within(.tarena..*)

3) i d 名限定bean

bean(idOrName 属性值)

a. 匹配容器中所有id或name属性值以dao结尾的bean对象bean(*dao)

相关主题
文本预览
相关文档 最新文档