1 创建web项目
2 引入jar包(spring的4个+2个日志+4个aop相关包)
3 编写applicationContext.xml配置文件
A 引入aop的约束
<?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">
</beans>
B 编写目标类并将它托管给spring
<!-- 配置目标对象:被增强的对象 -->
<bean id="productDao" class="com.spring.demo3.ProductDaoImpl"/>
4 编写切面类
public class MyAspectXML {
public void checkPri() {
//权限校验
System.out.println("权限校验===========");
}
}
5 将切面类托管给spring
<!--将切面类交给Spring管理 -->
<bean id="myAspect" class="com.spring.demo3.MyAspectXML"/>
6 配置aop
<!-- 通过AOP配置完成对目标类产生代理 -->
<aop:config>
<!--表达式配置那些类的哪些方法需要进行增强 -->
<aop:pointcut expression="execution(* com.spring.demo3.ProductDaoImpl.save(..))" id="pointcut1"/>
<!-- 配置切面 -->
<aop:aspect ref="myAspect">
<aop:before method="checkPri" pointcut-ref="pointcut1"/>
</aop:aspect>
</aop:config>
7 编写测试类
public class SpringDemo3 {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(
"applicationContext.xml");
ProductDao productDao = (ProductDao) applicationContext
.getBean("productDao");
@Test
public void demo1() {
productDao.save();
productDao.update();
productDao.delete();
productDao.find();
}