spring 使用XML配置开发Spring AOP
2020-12-13 01:54
标签:class spring 代码 开发 xmlns get 原理 OWIN use 没有任何的注解,这就意味着需要我们使用XML去向Spring IoC容器描述它们。 spring 使用XML配置开发Spring AOP 标签:class spring 代码 开发 xmlns get 原理 OWIN use 原文地址:https://www.cnblogs.com/ooo0/p/11018752.html
代码清单:切面类package com.ssm.chapter11.xml.aspect;
public class XmlAspect {
public void before() {
System.out.println("before ......");
}
public void after() {
System.out.println("after ......");
}
public void afterThrowing() {
System.out.println("after-throwing ......");
}
public void afterReturning() {
System.out.println("after-returning ......");
}
}
代码清单:spring-cfg4.xmlxml version=‘1.0‘ encoding=‘UTF-8‘ ?>
beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context" xmlns:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd">
bean id="xmlAspect" class="com.ssm.chapter11.xml.aspect.XmlAspect"/>
bean id="roleService" class="com.ssm.chapter11.xml.service.impl.RoleServiceImpl"/>
aop:config>
aop:aspect ref="xmlAspect">
aop:pointcut id="printRole" expression="execution(* com.ssm.chapter11.xml.service.impl.RoleServiceImpl.printRole(..))"/>
aop:before method="before" pointcut-ref="printRole"/>
aop:after method="after" pointcut-ref="printRole"/>
aop:after-throwing method="afterThrowing" pointcut-ref="printRole"/>
aop:after-returning method="afterReturning" pointcut-ref="printRole"/>
aop:around method="around" pointcut-ref="printRole"/>
aop:aspect>
aop:config>
beans>
代码清单:测试类public class Main {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("ssm/chapter11/spring-cfg4.xml");
RoleService roleService = ctx.getBean(RoleService.class);
Role role = new Role();
role.setId(1L);
role.setRoleName("role_name_1");
role.setNote("note_1");
roleService.printRole(role);
}
}