课程咨询 :186 8716 1620      qq:2066486918

昆明Java培训 > 达内新闻 > 通过来配置AOP实现方式
  • 通过来配置AOP实现方式

    发布:昆明Java培训      来源:达内新闻      时间:2016-10-21

  • 昆明Java培训的老师这一期继续给大家讲AOP实现方式的知识点,通过<aop:config>来配置(纯POJO切面)

    <aop:advisor>定义一个AOP通知者

    <aop:after>后通知

    <aop:after-returning>返回后通知

    <aop:after-throwing>抛出后通知

    <aop:around>周围通知

    <aop:aspect>定义一个切面

    <aop:before>前通知

    <aop:config>顶级配置元素,类似于<beans>这种东西

    <aop:pointcut>定义一个切点

    public class MyAspect {

    public void mybefore(){

    System.out.println("前置增强");

    }

    public String myafterReturning(String Returning){

    System.out.println("前置增强");

    return Returning;

    }

    }

    public class IserviceImpl implements Iservice{

    public void log() {

    System.out.println("开启事务");

    }

    public String dofirst() {

    System.out.println("记录日志");

    return "";

    }

    }

    Spring的配置文件:

    <!--目标对象-->

    <bean id="Service" class="cn.happy.dao.IserviceImpl"></bean>

    <!--切面:-->

    <bean id="myAspect" class="cn.happy.aop.MyAspect"></bean>

    <!--配置切面-->

    <aop:config>

    <!--配置切入点-->

    <aop:pointcut id="pointcut" expression="execution(public * *..Iservice.log(..))"/>

    <!--将类方法定义为最终增强并引用pointcut切入点-->

    <aop:aspect ref="myAspect">

    <aop:after method="myafterReturning" pointcut-ref="pointcut"/>

    </aop:aspect>

    </aop:config>

    测试类

    public class SpringTest {

    public static void main(String[] args) {

    ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");

    Iservice bean = (Iservice)context.getBean("Service");

    bean.log();

    String count=bean.dofirst();

    System.out.println(count);

    }

    }

    了解详情请登陆昆明达内Java培训官网(km.Java.tedu.cn)!

    推荐文章

上一篇:使用AspectJ的注解AOP实现方式

下一篇:【昆明Java培训】finally在return之后执行还是之前?

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:11/30

Java--零基础业余班

Java--零基础业余班

开班日期:11/30

Java--周末提升班

Java--周末提升班

开班日期:11/30

Java--零基础周末班

Java--零基础周末班

开班日期:11/30

  • 网址:http://km .java.tedu.cn      地址:昆明市官渡区春城路62号证券大厦附楼6楼
  • 课程培训电话:186 8716 1620      qq:2066486918    全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56