SSM-Spring-08:Springの静的エージェントの例
4860 ワード
------------ , , , -------------
スタティツクエージェント
JAvaの設計モードのエージェントモードは,静的エージェントである.
前に書くと、静的エージェントのメリットとデメリット
利点:クラスを変更しない方法で、このクラスの方法を強化することができます.
欠点:静的エージェントは物理ファイルを作成する必要があり、複数の静的エージェントの操作を実現するには、多くの物理ファイルが必要であり、あまり優れていない.
実装例:
Subjectインタフェース:抽象的なテーマのインタフェース、1つの方法があります
package cn.dawn.day08proxy;
/**
* Created by Dawn on 2018/3/6.
*/
public interface Subject {
public void request();
}
RealSubjectクラス:リアルテーマのクラス、上のSubjectインタフェースを実現し、彼の方法を実現する
package cn.dawn.day08proxy;
/**
* Created by Dawn on 2018/3/6.
*/
public class RealSubject implements Subject {
public void request() {
System.out.println("request ——————————————————————————————-");
}
}
ProxySubjectクラス:エージェントトピックのクラス、同様にSubjectインタフェースを実現し、中にSubjectインタフェースのインスタンスオブジェクト、彼のget/setメソッド、そして新しいメソッドがあり、実際のトピックを静的に強化します.
package cn.dawn.day08proxy;
/**
* Created by Dawn on 2018/3/6.
*/
public class ProxySubject implements Subject {
Subject subject;
public void request() {
System.out.println("before");
subject.request();
System.out.println("after");
}
public Subject getSubject() {
return subject;
}
public void setSubject(Subject subject) {
this.subject = subject;
}
}
単一測定方法:
package cn.dawn.day08proxy;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* Created by Dawn on 2018/3/3.
*/
public class test20180306 {
@Test
/*di */
public void t01(){
Subject realSubject=new RealSubject();
ProxySubject proxySubject=new ProxySubject();
proxySubject.setSubject(realSubject);
proxySubject.request();
//realSubject.request();
}
}
転載先:https://www.cnblogs.com/DawnCHENXI/p/8516230.html