SSM中解决aop问题

来源:互联网 发布:腾讯 php招聘 知乎 编辑:程序博客网 时间:2024/05/16 11:46

一.编码环境

 

IDE编辑环境

 

Jar

 

 

目录结构

 

 

二.代码编写

 

注意:AOP注解方式实现

的代码

 

@Pointcut是切入点  配置该注解当程序运行时候调用目标方法该Spring会更具AspectJ语法来匹配实现类包下的实现方法进行匹配,匹配的代码语句会执行该AOP方法

 

execution(* com.ssm.service.impl.*.*(..))

execution是执行的意思

第一个*是标识代码修饰符而*则就是所有修饰符

com.ssm.service.impl.*.*表示的是所需要绑定AOP方法的com.ssm.service.impl包下面的所有方法

(..)表示方法里面的参数是任意的

 

@Before是在所拦截方法执行之前执行一段逻辑

@After 是在所拦截方法执行之后执行一段逻辑

@Around是可以同时在所拦截方法的前后执行一段逻辑

等等

 

 

的代码

 

的代码

 

 

 

注意:注解的AOP配置文件

 

 

 


 

 

注意:<aop:aspectj-autoproxy/>是必须添加:该配置是启动AOPaspectj的自动动态代理

    <bean id="log" class="com.ssm.aop.Log"></bean>

<bean id="userService" class="com.ssm.service.impl.UserSerciveImpl"></bean>

添加log  Beanuserserviceimpl  Bean

 

①:不添加<bean id="log" class="com.ssm.aop.Log"></bean>代码执行没有任何反应

②:不添加<bean id="userService" class="com.ssm.service.impl.UserSerciveImpl"></bean>代码执行直接出错

XMLAOP配置方式

 

 

 

注意 method:指定的是你所写的aop方法的方法名

 

三.运行结果


0 0