zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    C知识(#一些笔记)
    我整理的Python规则(2)
    我整理的Python代码规则
    教你如何通俗易懂的了解深度学习知识
    c#中委托和事件(续)(转)
    c#中的委托和事件(转)
    .Net neatupload上传控件实现文件上传的进度条
    C#常用日期格式处理转换[C#日期格式转换大全
    C#string常用函数总结
    数据库08版本如何移动到05的数据中
  • 原文地址:https://www.cnblogs.com/huike/p/6637027.html
Copyright © 2011-2022 走看看