基于xml配置文件的声明式AspectJ
2020-07-13 05:11
711 查看
1-导入apectJware-jar和spring-aop.jar
2-编写Teacher接口和Teacher实现类
public interface Teacher { //上课 public void teach(); } public class TeacherImpl implements Teacher { @Override public void teach() { System.out.println("上课"); } }
3-编写切面类
//切面类 public class MyAspect { //点名 public void callName(){ System.out.println("点名"); } //收发作业 public void collectHomework(){ System.out.println("收发作业"); } }
4-编写配置文件
<?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:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd" > <!--目标类.被代理类的bean--> <bean id="teacher" class="p313.aop.xml.TeacherImpl"/> <!--切面类的bean--> <bean id="myAspect" class="p313.aop.xml.MyAspect"/> <!--aop的编程配置--> <aop:config> <aop:aspect ref="myAspect"> <!--在连接点上选择哪些点为切入点? 标准? 标准1 execution(* xml.*.*(..)) 表示 指定包xml 所有类 所有方法 对方法入参没有要求 对返回类型也没有要求 标准2 execution(* xml.Teacher.teach(..)) 标准3 p313.aop.xml --> <aop:pointcut id="myPointCut" expression="execution(* p313.aop.xml.*.*(..))"/> <!--aop:before 前置增强--> <aop:before method="callName" pointcut-ref="myPointCut"/> <!--aop:after 最终增强--> <aop:after method="callName" pointcut-ref="myPointCut"/> </aop:aspect> </aop:config> </beans>
5-测试
public class MyTest { public static void main(String[] args) { ApplicationContext applicationContext= new ClassPathXmlApplicationContext("p313/aop/xml/applicationContext.xml"); Teacher teacher= (Teacher) applicationContext.getBean("teacher"); teacher.teach(); } }
相关文章推荐
- Aop(基于XML配置文件实现)
- Spring 声明式事务管理----基于AspectJ的XML方式
- Spring中的AOP(七)——基于XML配置文件方式的AOP
- Hibernate学习笔记(三)--基于xml配置文件的单表增删改查
- SSM框架,基于JavaConfig配置方式,不用xml配置文件
- 基于XML的DI-为Spring配置多个子配置文件——包含关系
- Spring基于XML的声明式事务控制-配置步骤
- Spring中的AOP(六)——基于XML配置文件方式的AOP
- Gradle搭建Struts 2.5.14.1基于xml配置文件的开发环境
- spring基于xml加载和读取properties配置文件的方式
- MyBatis学习总结(一)---简单配置使用(基于XML方式实现CRUD以及加载配置文件的三种方式)
- 基于Proguard软件基础上,针对Web项目xml配置文件修改的java项目。
- Spring进阶之路(11)-使用Aspectj切面配置和XML配置文件方式实现切面编程
- SSH框架整合——基于XML配置文件
- spring基于XML的声明式事务控制-配置步骤
- disconf实践(二)基于XML的分布式配置文件管理,不会自动reload
- Struts教程____Struts2入门小demo(基于struts.xml配置文件)
- [Web]Servlet中使用Quartz【二】基于配置文件和jobs.xml触发任务执行
- 声明式管理事务:基于AspectJ的xml方式
- SSM框架项目搭建系列(六)—Spring AOP之基于XML的声明式AspectJ