File: context.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:aop="http://www.springframework.org/schema/aop"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd">
<bean id="test" class="TestBean2">
<property name="simpleBean" ref="simple"/>
</bean>
<bean id="simple" class="SimpleBean"/>
<bean class="Main"/>
<aop:aspectj-autoproxy/>
</beans>
File: Main.java
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) {
ApplicationContext ac = new ClassPathXmlApplicationContext("context.xml");
TestBean2 testBean = (TestBean2) ac.getBean("test");
SimpleBean simpleBean = (SimpleBean) ac.getBean("simple");
testBean.work();
testBean.stop();
simpleBean.sayHello();
simpleBean.x("a", "b");
}
}
class TestBean2 {
private SimpleBean simpleBean;
public void work() {
this.simpleBean.sayHello();
System.out.println("work");
}
public void stop() {
this.simpleBean.sayHello();
System.out.println("stop");
}
public void setSimpleBean(SimpleBean simpleBean) {
this.simpleBean = simpleBean;
}
}
class SimpleBean {
public void sayHello() {
System.out.println("Hello");
}
public void x(CharSequence a, String b) {
}
}
Download: Spring-AspectJAutoProxy.zip( 4,649 k)