为了账号安全,请及时绑定邮箱和手机立即绑定

请问在spring中的@aspectj切点表达式函数都有哪些?

请问在spring中的@aspectj切点表达式函数都有哪些?

幕布斯7119047 2019-08-16 15:10:24
spring中的@aspectj切点表达式函数都有哪些
查看完整描述

3 回答

?
慕勒3428872

TA贡献1848条经验 获得超5个赞

12345678910注解模式的aspectj中,切面逻辑、切入点等都需要集中定义在一个类中。其中: @Pointcut注解定义了切入点,它通过一个execution表达式来指定需要切入的类和方法,将本注解所在的方法与切入的方法绑定,后续的操作中都直接使用注解所在方法的方法名来映射被切入的方法(因而本方法只需为空即可)。pointcut可定义多个 Aspectj提供了多种类型的切面逻辑:主要有@After(方法结束)、@AfterReturning(方法返回)、@AfterThrowing(方法抛出异常)、@Before(方法开始前)、@Around(方法前后)这五个针对方法的注入,以及其它一些针对变量声明的注入(不常用) 从注解的参数列表中可以看出该注解所对应的切面逻辑能提供什么样的参数,如:@AfterReturning的returning参数,可以指定目标方法的返回值在本切面逻辑中的变量名;@AfterThrowing的throwing参数,可以指定目标方法抛出的异常对象在本切面逻辑中的变量名。除此而外,所有的切面注解都必有两个参数:value和argNames,value用于指定pointcut的方法名,argNames则是目标方法各参数在本切面逻辑中的方法名切面方法自带一个参数叫JoinPoint,其中保存了方法的一些元数据信息,最有用的便是可以从中直接获取参数对象列表,以及可以直接获取到作为注入点的目标对象 



查看完整回答
反对 回复 2019-08-24
  • 3 回答
  • 0 关注
  • 1557 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信