欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring中AOP的使用

程序员文章站 2022-04-07 14:54:34
...

Spring中spring-test的使用

1.引入jar包

2.在测试类中添加注解

//添加测试的注解的位置
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class AopTest {
    //通过注解的形式来调用该类
    @Resource(name="goodsDao")
    private GoodsDao goodsDao;
    @Test
    public void test(){
        //设置完成之后就可以使用类中的方法了(使用这个注解之前要在配置文件中设置相关的bean)
        goodsDao.save();
        goodsDao.update();
    }
}

Spring中AOP的使用

1在工程中引入spring基本jar包

2.引入aop开发的相关jar包

3.在src中创建核心配置文件(applicationContext.xml)

4.在核心配置文件中加入约束

<beans http://wwww.springframework.org/schema/aop></beans>

5.创建切面类

public class Myaspect {
    public void check(){
        System.out.println("权限校验");
    }
}

6.修改配置文件(在配置文件中更改配置)

1).将切面类交给Spring管理

2).配置<aop:config></aop:cofig>

<?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 id="goodsDao" class="com.helong.demo1.GoodsDaoImpl"></bean>
    <!--将切面交给Spring处理-->
    <bean id="myaspect" class="com.helong.demo2.Myaspect"></bean>

    <!--配置AOP-->
    <aop:config>
        <!--配置aop切点:给哪个方法进行增强-->
        <aop:pointcut id="savepoint" expression="execution(* com.helong.demo1.GoodsDaoImpl.save(..))"/>
        <!--配置切面:增强的功能是什么-->
        <aop:aspect ref="myaspect">
            <aop:before method="check" pointcut-ref="savepoint"/>
        </aop:aspect>
    </aop:config>

</beans>

7.测试

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class AopTest {
    @Resource(name="goodsDao")
    private GoodsDao goodsDao;
    @Test
    public void test(){
        goodsDao.save();
    }
}

 

 

相关标签: Spring中AOP的使用