美文网首页技术干货程序员
spring aop半自动与全自动编程

spring aop半自动与全自动编程

作者: Andy_1777 | 来源:发表于2017-04-07 19:17 被阅读0次

    在spring中,我们可以通过在配置文件中配置目标类,切面类,代理类来达到目的。首先要讲的的是半自动代理。这种情况下,在配置文件中创建代理类时,需要配置以下几个部分:


    1.创建目标类

    <bean id="目标类">

    2.创建切面类

    <bean id="切面类”>

    3.创建代理类

    <bean id="代理类">

    其中需要配置几个字段:

    1).interfaces:确定目标类的接口类

    2).target:确定目标类

    3).interceptorNames:确定切面类

    这样一来,在使用applicationContext.getBean()时,我们需要得到的依然是代理类的名称。

    applicationContext.getBean("代理类");


    我们将以上的AOP称为半自动AOP代理。

    那么,什么是全自动代理呢?全自动,也就是我们在配置文件中做好一切配置,获得Bean的时候,只需要传入目标类的名称,spring就会自动根据配置文件来帮我们来生成代理对象,在我们书写的代码中,无需考虑具体细节。以下进行介绍。

    首先是spring的配置文件。

    这里我们需要加入schema约束,具体的写法,可以参考spring文档(xsd-config.html)。

    接下来仍然分为三个部分:

    1.创建目标类

    2.创建切面类

    3.AOP配置

    详细说一下3的配置。

    <aop:config proxy-target-class="true">//声明使用cglb代理

              <aop:pointcut expression="” id="">//切入点,从目标对象获得具体方法,expression是切入点表达式,用于配置目标类中的连接点有哪些是切入点。关于切入点表达式,可 查询相关资料。

              <aop:advisor advice-ref="" point-ref="">//一个通知,一个切入点

           

    <aop:config/>

    这样一来,使用spring工厂产生bean时,直接使用目标类的名称就可以得到代理对象了。

    相关文章

      网友评论

        本文标题:spring aop半自动与全自动编程

        本文链接:https://www.haomeiwen.com/subject/uczhattx.html