Spring之AOP XML方式
2012-01-02 22:48
302 查看
xml方式和Annotation方式差不多,只需改动代理类,和配置文件即可。
package aspect; import org.aspectj.lang.annotation.After; import org.aspectj.lang.annotation.AfterReturning; import org.aspectj.lang.annotation.AfterThrowing; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Before; import org.aspectj.lang.annotation.Pointcut; public class UserDaoAspect { public void startSay(){ //告知在xml文件中配置为前置通知 System.out.println("Good Morning"); } public void endSay(){ //告知在xml文件中配置为后置通知 System.out.println("bye bye"); } }
applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"> <bean id="userDao" class="dao.UserDaoImpl" /> <bean id="aspectj" class="aspect.UserDaoAspect"></bean> <aop:config> <aop:aspect id="myaspectj" ref="aspectj"> <aop:pointcut expression="execution(* dao..*.*(..))" id="mypointcut"/> <aop:before method="startSay" pointcut-ref="mypointcut"/><!-- 前置通知 --> <aop:after method="endSay" pointcut-ref="mypointcut"/> <!-- 后置通知 --> </aop:aspect> </aop:config> </beans>
测试类
package test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import dao.UserDao; import dao.UserDaoImpl; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml"); UserDao dao=(UserDao)context.getBean("userDao"); dao.addUser(); } }
两种方式效果是一样的
相关文章推荐
- spring 之AOP与其xml和注解方式(03)
- Spring3.0 入门进阶(3):基于XML方式的AOP使用
- Spring之AOP XML方式
- Spring实现AOP方式之一:基于XML配置的Spring AOP
- Spring入门Blog[九、Spring Aop 用xml的方式实现]
- Spring 基于xml配置方式的AOP
- Spring关于AOP配置举例(XML配置文件方式)
- SpringAOP2种配置方式(xml方式)
- Intellij IDEA创建Spring项目之基于Aspectj的AOP操作(XML配置方式)
- 使用Spring的配置xml方式实现AOP
- xml方式---spring的AOP拦截用户操作
- Spring Aop实现——Annotation方式(注解式)and Schema-based式(xml配置)
- [5] Spring中的AOP操作(使用xml 配置文件的方式)
- Spring中的AOP(七)——基于XML配置文件方式的AOP
- Spring系列之 (九):AOP实现方式(一):使用AspectJ的xml方式
- Spring(三)AOP的概述及其XML方式用法
- spring中aop以xml配置方式
- Spring之AOP XML方式
- Spring aop注解方式和xml配置方式
- Spring之AOP声明式事务管理(采用xml的配置方式更好)