首页 > 代码库 > Spring之AOP简单demo
Spring之AOP简单demo
1.添加JAR包,出了Spring自身的Jar包还要一些依赖的JAR包,不然会报ClassNotFound。
Student.java
package com.lubby.bean; import org.springframework.stereotype.Component; @Component("student") public class Student { private String id; private String name; public Student() { super(); } public Student(String id, String name) { super(); this.id = id; this.name = name; } public void readBook() { System.out.println("I am reading book now....."); } public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
Something.java
package com.lubby.bean; import org.springframework.stereotype.Component; @Component("something") public class Something { public void borrowBook() { System.out.println("Borrow the book from library......"); } public void returnBook() { System.out.println("Return the book to library........"); } }
test.xml
<?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:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:aop="http://www.springframework.org/schema/aop" default-lazy-init="true" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd "> <!-- 自动检测并注册为spring中的bean+启用注解 --> <context:component-scan base-package="com.lubby.bean"></context:component-scan> <aop:config> <aop:aspect ref="something"> <aop:pointcut expression="execution(* com.lubby.bean.Student.readBook(..))" --定义切点为readBook方法 id="readBook" /> <aop:before pointcut-ref="readBook" method="borrowBook" />---在运行readBook方法之前执行borrowBook方法 <aop:after-returning pointcut-ref="readBook" ----在运行readBook方法之后执行returnBook method="returnBook" /> </aop:aspect> </aop:config> </beans>
执行结果
Borrow the book from library...... I am reading book now..... Return the book to library........
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。