栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring中MethodBeforeAdvice,AfterReturningAdvice类对消息的管理和使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring中MethodBeforeAdvice,AfterReturningAdvice类对消息的管理和使用

Spring中对消息机制的使用,我们首先使用继承类的方法完成
通过使用idea工具下的Maven聚合项目方式来编写的案例
项目整体架构

父项目的pom.xml中定义了所有的包



  4.0.0
  com.zxf
  SpringProject
  pom
  1.0-SNAPSHOT
  
    Spring-web1
      Spring-test2
  
    
    
        4.12
        3.2.8
        5.1.32
        1.2
        3.1.0
        2.0
        1.2.17

        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        4.1.6.RELEASE
        1.1.3
        3.3.1
        2.2.2
        3.17.1-GA
        1.2.3
        1.1.2
        1.0
        1.7.4
    
    
        
            
                junit
                junit
                ${junit.version}
            
            
            
                org.mybatis
                mybatis
                ${mybatis.version}
            
            
            
                mysql
                mysql-connector-java
                ${mysql.version}
            
            
            
                jstl
                jstl
                ${jstl.version}
            
        
            
                javax.servlet
                javax.servlet-api
                ${servlet.version}
                provided
            
            
                javax.servlet
                jsp-api
                ${jsp.version}
            
            
            
                log4j
                log4j
                ${log4j.version}
            
            
            
            
                org.springframework
                spring-aop
                ${spring-aop.version}
            
            
            
                org.springframework
                spring-aspects
                ${spring-aspects.version}
            
            
            
                org.springframework
                spring-beans
                ${spring-beans.version}
            
            
            
                org.springframework
                spring-context
                ${spring-context.version}
            
            
            
                org.springframework
                spring-context-support
                ${spring-context-support.version}
            
            
            
                org.springframework
                spring-core
                ${spring-core.version}
            
            
            
                org.springframework
                spring-expression
                ${spring-expression.version}
            
            
            
                org.springframework
                spring-instrument
                ${spring-instrument.version}
            
            
            
                org.springframework
                spring-instrument-tomcat
                ${spring-instrument-tomcat.version}
            
            
            
                org.springframework
                spring-jdbc
                ${spring-jdbc.version}
            
            
            
                org.springframework
                spring-jms
                ${spring-jms.version}
            
            
            
                org.springframework
                spring-messaging
                ${spring-messaging.version}
            
            
            
                org.springframework
                spring-orm
                ${spring-orm.version}
            
            
            
                org.springframework
                spring-oxm
                ${spring-oxm.version}
            
            
            
                org.springframework
                spring-test
                ${spring-test.version}
                test
            
            
            
                org.springframework
                spring-tx
                ${spring-tx.version}
            
            
            
                org.springframework
                spring-web
                ${spring-web.version}
            
            
            
                org.springframework
                spring-webmvc
                ${spring-webmvc.version}
            
            
            
                org.springframework
                spring-webmvc-portlet
                ${spring-webmvc-portlet.version}
            
            
            
                org.springframework
                spring-websocket
                ${spring-websocket.version}
            
            
            
            
                commons-logging
                commons-logging
                ${commons-logging.version}
            
            
            
                asm
                asm
                ${asm.version}
            
            
            
                cglib
                cglib
                ${cglib.version}
            
            
            
                org.javassist
                javassist
                ${javassist.version}
            
            
            
                org.mybatis
                mybatis-spring
                ${mybatis-spring.version}
            
            
            
                aopalliance
                aopalliance
                ${aopalliance.version}
            
            
            
                org.aspectj
                aspectjweaver
                ${aspectjweaver.version}
            


        
    
   
       
           
               src/main/java
               
                   ***.xml
                   **/*.properties
               
           
       
       
           
               org.apache.tomcat.maven
               tomcat7-maven-plugin
               
                   /
                   9090
               
           
       
   

因为我们只是了AOP切面技术完成该案例,所有不需要完全导入父项目的JAR包。
在Spring-test2下的pom.xml文件内容如下




    
        SpringProject
        com.zxf
        1.0-SNAPSHOT
    
    4.0.0

    Spring-test2
   
       
           junit
           junit
       
       
       
           org.springframework
           spring-aop
       
       
       
           org.springframework
           spring-aspects
       
       
       
           org.springframework
           spring-beans
       
       
       
           org.springframework
           spring-context
       
       
       
           org.springframework
           spring-core
       
       
       
           org.springframework
           spring-expression
       
       
       
           org.springframework
           spring-tx
       
       
       
           commons-logging
           commons-logging
       
       
       
           aopalliance
           aopalliance
       
       
       
           org.aspectj
           aspectjweaver
       
   

在dome包中创建2个简单的类,为了之后调用该类下的方法来为消息机制做准备

package com.zxf.demo;

public class Demo1 {
    public void demo1(){
        System.out.println("demo1");
    }
    public void demo2(){
        System.out.println("demo2");
    }
    public void demo3(){
        System.out.println("demo3");
    }
}



package com.zxf.demo;

public class Demo2 {
    public void f(){
        System.out.println("f()");
    }
}

编写消息机制,本案例通过继承类放是完成

package com.zxf.advice;

import org.springframework.aop.AfterReturningAdvice;

import java.lang.reflect.Method;

public class MyAfterAdvice implements AfterReturningAdvice {
    public void afterReturning(Object o, Method method, Object[] objects, Object o1) throws Throwable {
        System.out.println("执行后发出的通知...");
    }
}



package com.zxf.advice;

import org.springframework.aop.MethodBeforeAdvice;

import java.lang.reflect.Method;

public class MyBeforeAdvice implements MethodBeforeAdvice {
    public void before(Method method, Object[] objects, Object o) throws Throwable {
               System.out.println("执行前发出的通知。。");
    }
}

下面来完成Spring核心配置文件的编写
applicationContext.mxl




    

       
       
       
       
    
    




最后一个junit的方式测试类

package com.zxf;

import com.zxf.demo.Demo1;
import com.zxf.demo.Demo2;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test1 {
    @Test
    public void test1(){
        ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
        Demo1 d_1 = ac.getBean("demo1", Demo1.class);
        d_1.demo1();
        d_1.demo2();
        d_1.demo3();
        Demo2 d_2 = ac.getBean("demo2", Demo2.class);
          d_2.f();

    }
}

运行结果

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/778613.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号