package com.xk.spring.kp04_aop.proxy.s1_static; public interface IStudentService { public void save(Student stu); }
package com.xk.spring.kp04_aop.proxy.s1_static; public class ImplStudentService implements IStudentService { @Override public void save(Student stu) { // dao实现方法 System.out.println("保存..."); } }
package com.xk.spring.kp04_aop.proxy.s1_static; public class StudentServiceProoxy implements IStudentService { private ImplStudentService service; public StudentServiceProoxy(ImplStudentService service) { this.service = service; } @Override public void save(Student stu) { System.out.println("beginTranstation()"); service.save(stu); System.out.println("commit()"); } }
package com.xk.spring.kp04_aop.proxy.s1_static; public class Student { private String name; private Integer age; public Student() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public Student(String name, Integer age) { this.name = name; this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } }
package com.xk.spring.kp04_aop.proxy.s1_static; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration public class StaticProxyTest { @Autowired @Qualifier("ProxyService") private IStudentService transeriver; @Test public void TestStaticProxy() throws Exception { transeriver.save(new Student("张三", 18)); } }
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- id唯一标识 自动创建类的对象 --> <bean id="StudentService" class="com.xk.spring.kp04_aop.proxy.s1_static.ImplStudentService" /> <bean id="ProxyService" class="com.xk.spring.kp04_aop.proxy.s1_static.StudentServiceProoxy"> <constructor-arg name="service" ref="StudentService"/> </bean> </beans>