开发手册 欢迎您!
软件开发者资料库

Spring AOP - 基于XML的建议

基于建议的Spring AOP XML - 学习Spring AOP Framework,简单易行,从基本概念到高级概念,包括概述,环境设置,核心概念,建议类型,实现,代理,自定义注释,基于XML的配置,应用程序,PointCut方法,建议之前,建议之后,返回建议之后,投掷建议之后,围绕方面,基于注释的配置。

围绕是一种建议类型,可确保在方法执行之前和之后运行建议.以下是around advice的语法.

语法

                      

其中,

  • PointCut -id :  PointCut的ID.

  • methodName : 在被调用函数之前调用的函数的方法名称.

为了理解上述与Around Advice相关的概念,让我们写一个将实现约会建议的例子.要编写我们的示例并提供一些建议,让我们使用一个可用的Eclipse IDE并使用以下步骤创建一个Spring应用程序 :

Step描述
1更新项目学生根据章节 Spring AOP  - 应用程序创建.
2更新bean配置并运行应用程序,如下所述.

以下是 Logging.java 文件的内容.这实际上是方面模块的一个示例,它定义了在不同点调用的方法.

  package com.it1352; import org.aspectj.lang.ProceedingJoinPoint;public class Logging {   /**     * This is the method which I would like to execute    * around a selected method execution.    */   public String aroundAdvice(ProceedingJoinPoint jp) throws Throwable{      System.out.println("Around advice");      Object[] args = jp.getArgs();      if(args.length>0){         System.out.print("Arguments passed: " );         for (int i = 0; i < args.length; i++) {            System.out.print("arg "+(i+1)+": "+args[i]);         }      }      Object result = jp.proceed(args);      System.out.println("Returning " + result);      return result.toString();   }   }

以下是 Student.java 文件的内容.

package com.it1352; public class Student {   private Integer age;   private String name;   public void setAge(Integer age) {      this.age = age;   }      public Integer getAge() {      System.out.println("Age : " + age );      return age;   }   public void setName(String name) {      this.name = name;   }      public String getName() {      System.out.println("Name : " + name );      return name;   }      public void printThrowException(){      System.out.println("Exception raised");      throw new IllegalArgumentException();   }}

以下是 MainApp.java 文件的内容.

package com.it1352; import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class MainApp {   public static void main(String[] args) {      ApplicationContext context =          new ClassPathXmlApplicationContext("Beans.xml");      Student student = (Student) context.getBean("student");      student.getName();       }}

以下是配置文件 Beans.xml .

                                                                            

运行项目

完成源文件和配置文件的创建后,运行您的应用程序.右键单击应用程序中的MainApp.java,然后使用 run as Java Application 命令.如果你的申请一切正常,它将打印以下信息.

Around adviceName : ZaraReturning Zara