• proxy Static方式


    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>
  • 相关阅读:
    requirejs按需加载angularjs文件
    Ricky_Huang的博客园网址二维码
    bootstrap双日历插件实例化
    angularjs ocLazyLoad分步加载js文件,angularjs ocLazyLoad按需加载js
    利用html5 canvas实现纯前端上传图片的裁剪
    <input type="file"> change事件异常处理办法
    react-native-http请求后navigator导航跳转
    js 将long型字符串转换成日期格式
    百度ueditor 实例化 Cannot set property 'innerHTML' of null 完美解决方案
    IDEA 创建Maven Web项目(图文版)
  • 原文地址:https://www.cnblogs.com/huike/p/6637027.html
Copyright © 2020-2023  润新知