1.接口类
package com.spring.service;
public interface SqlManager {
public abstract void insert(String sql);
}
2.接口实现类
package com.spring.service;
public class SqlManagerImp implements SqlManager {
public void insert(String sql){
System.out.println("--------执行插入!----------");
}
}
3.applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop"
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">
<bean id="sqlManager" class="com.spring.service.SqlManagerImp" lazy-init="true"/>
<!--代理的是接口 -->
<bean id="factoryBean" class="org.springframework.aop.framework.ProxyFactoryBean">
<!--代理的目标类 -->
<property name="target" ref="sqlManager"></property>
<!--代理的是接口 -->
<property name="proxyInterfaces">
<value>com.spring.service.SqlManager</value>
</property>
</bean>
</beans>
4.测试类
package com.spring.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import com.spring.service.SqlManager;
public class Test{
public static void main(String[] args){
ApplicationContext bf = new FileSystemXmlApplicationContext("src/applicationContext.xml");
SqlManager manager = (SqlManager) bf.getBean("factoryBean");
manager.insert("");
}
}