O(∩_∩)O哈哈~,经过前面的详细研究我们终于学习完了的Burlap的远程服务技术:
现在我们开始编写自己的远程开发技术文档信息
首先说以下我的思路:
在客户端将请求的信息以对象的信息封装成一个远程访问模型(Call对象)加密后发送到服务端,通过Socket发送到服务端,服务端接收客户端请求解析接受的信息。调用响应的服务端类,得到结果然后将响应响应在封装远程访问模型(Call对象),加密后发送到客户端,客户端解析响应的服务端响应得到相应请求的结果。从而实现远程访问技术^_^!简单吧
开发远程服务框架我的步骤如下:
1。开发响应的服务类,必须使用响应的接口服务接口(面向接口编程)
注意我实现的远程服务使用的JDK代理方式实现,所以必须实现相应的服务接口。如果有时间可以使用从新使用CGLIB动态字节码转换技术实现也可以。O(∩_∩)O哈哈~。 笔者仅仅时提供一个开发远程服务的Demo。(+﹏+)~狂晕 (+﹏+)~狂晕
2。将响应框架和服务jar文件在客户端根路径放置一份在调用使用。
现在开始开发远程服务框架:
package cn.com.huawei.socket.remote.rpc;
/**
* 远程访问的模型类
* @author bailonggang
* 2009-2-21
* 下午05:22:49
*/
public class Call implements java.io.Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private String className;
private String methodName;
private Class[] paramTypes;
private Object[] params;
private Object result;
public Call() {
}
public Call(String className, String methodName, Class[] paramTypes,
Object[] params) {
this.paramTypes = paramTypes;
this.params = params;
this.methodName = methodName;
this.className = className;
}
public String getClassName() {
return className;
}
public void setClassName(String className) {
this.className = className;
}
public String getMethodName() {
return methodName;
}
public void setMethodName(String methodName) {
this.methodName = methodName;
}
public Object[] getParams() {
return params;
}
public void setParams(Object[] params) {
this.params = params;
}
public Class[] getParamTypes() {
return paramTypes;
}
public void setParamTypes(Class[] paramTypes) {
this.paramTypes = paramTypes;
}
public Object getResult() {
return result;
}
public void setResult(Object result) {
this.result = result;
}
@Override
public String toString() {
return "ClassName" + this.className + "methodName :" + this.methodName;
}
}
相关推荐
Burlap是一个轻量级的XML RPC协议 这使得他可以移植到任何可以解析XML的语言中 比起Hessian 它的可读性更强 和其他基于Xml的远程技术(如SOAP和XML RPC)不同 它的消息结构尽可能简单 不需要额外的外部定义语言 如...
使用eclipse maven工程搭建hessian远程服务demo 分服务端的整合和客户端 建议阅读相关博客http://blog.csdn.net/heisemuyangquan/article/details/79460528
burlap-2.1.12.jar
7. JMS:远程访问通过类JmsInvokerServiceExporter和JmsInvokerProxyFactoryBean使用JMS的底层协议实现。 二. 远程访问------RMI 1. RMI远程访问基本流程 1). 服务端定义远程访问接口; 2). 服务端通过...
在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、 Burlap、Hessian、SOAP、EJB和JMS 等,这些名词之间到底是些什么关系呢,它们...
远程调用方法就是HttpInvoker:他也是将参数和返回值通过Java的序列化机制进行编组和反编组,它具有RMI的支持所有可序列化对象的...试使用Http协议传输二进制流的,同时又具有Hessian、Burlap(传输xml文本)的优点。
jar包,亲测可用
Mastering Resin (英文版) by Richard Hightower and Joseph D. Gradecki ISBN:0471431036 ... Appendix D - Burlap and Hessian APIs Index List of Figures List of Tables List of Listings
python库。 资源全名:burlap-0.9.2.tar.gz
在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI、MINA、ESB、Burlap、Hessian、SOAP、EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后...
antlr.jar asm.jar asm-attrs.jar burlap-2.1.12.jar c3p0-0.9.0.2.jar cglib-2.1.jar cglib-nodep-2.1_3.jar commons-attributes-api.jar commons-attributes-compiler.jar commons-beanutils.jar commons-...
NULL 博文链接:https://qq85609655.iteye.com/blog/970266
5.3. 从错误代码到错误信息 5.4. Bean处理和BeanWrapper 5.4.1. 设置和获取属性值以及嵌套属性 5.4.2. 内建的PropertyEditor实现 5.4.2.1. 注册用户自定义的PropertyEditor 6. 使用Spring进行面向切面编程(AOP) ...
DWR和Buffalo都是Web Remoting框架,区别在于DWR使用自定义的简单文本协议,而Buffalo使用burlap协议;DWR的服务器端实现要比Buffalo完善一些……
2.2.5. 在classpath中自动搜索组件 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的支持 2.3.3. 对bean命名pointcut( bean name pointcut element)的支持 2.3.4. 对AspectJ装载...
cp ./lib/burlap.jar:./build/jar/burlap-seed.jar main.java.HelloGridWorld java -cp ./lib/burlap.jar:./build/jar/burlap-seed.jar main.java.GridWorldDemo 转换为适用于Windows的斜杠等这似乎在Windows中工作...
(BURLAP) java 库的持续开发存储库。 BURLAP 是一个 Java 代码库,用于使用和开发单代理或多代理规划和学习算法以及伴随它们的域。 该库使用高度灵活的状态/观察表示,您可以在其中使用自己的 Java 类定义状态,从而...