大话java的代理模式
来源:互联网 发布:知闻视频的tina是谁? 编辑:程序博客网 时间:2024/06/05 11:41
1.代理模式的介绍
代理模式是java中常见,也是重要的一种模式,比如spring中的aop就是代理模式的一种应用。
那么代理模式究竟有什么作用?代理模式就是“控制和管理对象的访问”。相对于简单粗暴地直接访问对象、调用对象的方法,使用代理模式可以在对象的使用时,进行预处理和事后处理等。比如权限控制、日志记录。当然你可以直接在对象里,做这些操作,但是这样耦合性太高,不利于代码的维护。
2.如何使用代理模式
一个实现代理模式的demo,主要需要3个类
1)委托类接口
//委托类接口public interface TestService { void business();}
2)委托类的实现
//委托类的实现类public class TestImplement implements TestService{ @Override public void business() { System.out.println("do the busniess"); }}
3)代理类
//委托类的代理类,注意需要implements 委托类public class StaticProxy implements TestService{ private TestService testService; public StaticProxy(TestService testService) { this.testService = testService; } @Override public void business() { //可以做一些预处理,比如数据处理、权限控制等 System.out.println("before invoke,I can do something."); testService.business(); //可以做一些事后处理,比如执行结果的记录,事务提交等 System.out.println("before invoke,I can do something."); }}
测试方法:
TestService service = new TestImplement();StaticProxy proxy = new StaticProxy(service);proxy.business();
测试输出结果:
before invoke,I can do something.
do the busniess
before invoke,I can do something.
以上就是代理的简单的一种实现,我们也叫静态代理。因为这样的实现方式,需要为每个委托类都写代理类,会产生大量的代理类,也不利于代码的复用和项目的解耦,所以我们会使用动态代理去解决这些问题。关于动态代理的详细介绍会在下篇中继续大话。
这是本人对于代理模式的一些理解,十分欢迎大家的指教和讨论。
阅读全文
0 0
- 大话java的代理模式
- 大话设计模式4 代理模式 的java代码实现
- java设计模式大话之代理模式
- 《大话设计模式》读书笔记:代理模式与Java的Proxy动态代理
- 《大话设计模式》读书笔记:代理模式与Java的Proxy动态代理
- 大话设计模式java版本 第七章 代理模式
- 大话设计模式读后感之代理模式(JAVA)
- 《大话设计模式》java实现之代理模式
- 大话设计模式 代理模式
- 大话设计模式-代理模式
- 大话设计模式-代理模式
- 大话设计模式-代理模式
- 大话设计模式-代理模式
- 大话设计模式--代理模式
- 大话设计模式----代理模式
- php之大话代理模式
- 大话设计之代理模式
- JAVA的代理模式
- zookeeper原理
- Kuangbin带你飞 专题四 最短路径 习题报告
- Java设计模式之结构型模式-组合模式(Composite)
- C#-WinForm-实现学员对象修改
- input最多输入的字符数(中文,英文,数字都OK)
- 大话java的代理模式
- 将一个线程绑定到特定 CPU上
- httpclient 无信任证书使用https
- HTTP方法
- bugku xss
- java
- POJ 3977 Subset (简单折半枚举)
- 运行百度地图demo过程及问题
- NOIP2012Day2T1同余方程解题报告以及扩展欧几里得讲解