1.代理模式 举个例子:有一个婴儿,他本身不会自己吃饭和洗澡等等一些事情,于是婴儿就请了一个保姆,于是婴儿和保姆之间商定了一个协议,协议中写明了保姆需要做什么事情,而保姆就是这个代理人, ?即:婴儿和保...
分类:
其他好文 时间:
2015-06-03 21:48:35
阅读次数:
136
代理模式:
为某个类提供了一个代理来控制访问它。
Provide a surrogate or placeholder for another object to control access to it.UML图:
主要包括:
Subject(IMath):姑且称之为抽象的主题角色吧,这个类为代理类(Proxy)和真实的主题角色(RealSubject)定义了一个统一的接口,这样代理类(Pr...
分类:
其他好文 时间:
2015-06-03 11:55:02
阅读次数:
148
本文主要对设计模式进行大概讲解,特别是对创建型设计模式进行简明的解析:
一、设计模式的分类
三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命...
分类:
其他好文 时间:
2015-06-03 00:58:17
阅读次数:
327
博文转自http://www.cnblogs.com/jqyp/archive/2010/08/20/1805041.htmlJAVA的动态代理代理模式代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理...
分类:
编程语言 时间:
2015-06-01 18:43:29
阅读次数:
270
JDK自从1.3版本开始,就引入了动态代理,JDK的动态代理用起来非常简单,但是它有一个限制,就是使用动态代理的对象必须实现一个或多个接口 。如果想代理没有实现接口的类可以使用CGLIB包。先来看看GCLIB的具体使用,然后再对应代码深入理解。
在使用CGLIB时需引入cglib-nodep-2.1_3.jar包。
先来一个基础类,注意,这里没有对应的接口。
pub...
分类:
其他好文 时间:
2015-05-31 21:46:56
阅读次数:
115
测试设备:Windows8.1,Android 4.0.4山寨Android手机网络环境:电信校园网,Wifi环境测试工具:Fiddler4完全参考了:http://www.jb51.net/softjc/133721.htmlStep1:Fiddler设置代理模式选择允许远程连接:选择完之后重启F...
分类:
移动开发 时间:
2015-05-31 21:39:01
阅读次数:
196
容错恢复机制
应用程序开发中常见的功能
程序运行的时候,正常情况下应该按某种方式来做,如果按照某种方式来做发生错误的话,系统并不会崩溃,而是继续运行,能提供出错后的备用方案。
日志记录的例子
把日志记录到数据库和日志记录到文件当做两种记录日志的策略
日志记录的策略接口:
package com.cmc;
public interface LogStrategy {
...
分类:
其他好文 时间:
2015-05-31 09:31:47
阅读次数:
163
上篇博文介绍的静态代理有一个最主要的缺点:每个业务类,必须有一个代理类。这样在程序中就会出现很多个代理类,这样的代码还是有坏味道的。这篇文章就为了解决这个问题而来--JDK动态代理。
先来看一看最基本的业务接口和业务类:
/**
* 业务接口类
* @author sunliduan
*
*/
public interface Greeting {
void sa...
分类:
其他好文 时间:
2015-05-30 21:13:11
阅读次数:
160
代理模式:为其他对象提供一种代理以控制对这个对象的访问
代理模式适用场合:第一,远程代理,也就是为一个对象在不同的地址空间提供局部代理,例如webservice应用;第二、虚拟代理,根据需要创建开销很大的对象。通过它来存放实例化需要很长时间的真实对象;第三、安全代理,用来控制真实对象访问时的权限;第四、智能指引,是指当调用真实的对象时,代理处理另外一些事。
举个实例:大鹏出差在外,柳岩今天过生...
分类:
其他好文 时间:
2015-05-29 23:18:57
阅读次数:
129
接着上篇博客的代理模式,我们继续,上篇博客介绍了JDK的动态代理,但是JDK的动态代理机制只能代理实现了接口的类,而不能实现接口的类就不能实现JDK的动态代理,这样就存在一定的局限性。对于这种情况,我们采用CGLIB来实现。
一、CGLIB动态代理
cglib是针对类来实现代理的,其实现原理:CGLIB的底层采用ASM字节码生成框架,使用字节码技术生成代理,比使用反射生成代理的效果要...
分类:
编程语言 时间:
2015-05-29 23:14:21
阅读次数:
168