phprpc/hprose知识库 |
||
|
Hprose for Java
Hprose for Java 快速入门
使用Hprose制作一个简单的分布式应用程序只需要几分钟的时间,您先要创建服务器端应用程序,然后创建客户端应用程序,最后您就可以将它们运行起来了。本章将用一个简单但完整的实例来带您快速浏览使用Hprose for Java进行分布式程序开发的全过程。 创建Hprose的Hello服务器 我们以Netbeans作为开发环境为例,来介绍一下如何创建一个Hprose服务器,按照传统惯例,都是以Hell ...
Hprose for Java类型映射
类型映射是Hprose的基础,正是因为Hprose设计有良好的类型映射机制,才使得多语言互通得以实现。本章将对Hprose for Java的类型映射进行一个详细的介绍。 基本类型 值类型 类型 描述整型 Hprose中的整型为32位有符号整型数,表示范围是-2147483648~2147483647(-231~231-1)。长整型 Hprose中的长整型为有符号无限长整型数,表示范围仅跟内存 ...
Hprose for Java 服务器(一)
直接使用HproseServlet发布服务 因为在快速入门里面我们已经详细通过图解方式介绍了通过直接使用HproseServlet发布服务的整个过程,这里就不再通过图解方式介绍了,下面我们更多关注的是代码部分。 通过HproseServlet发布服务很简单,直接通过配置方式就可以,如果要发布的类是现成的,您不需要编写一行代码就可以完成发布。 发布的方法可以是静态方法,也可以是实例方法。但必须是 ...
Hprose for Java 服务器(二)
隐藏发布列表 发布列表的作用相当于Web Service的WSDL,与WSDL不同的是,Hprose的发布列表仅包含方法名,而不包含方法参数列表,返回结果类型,调用接口描述,数据类型描述等信息。这是因为Hprose是支持弱类型动态语言调用的,因此参数个数,参数类型,结果类型在发布期是不确定的,在调用期才会确定。所以,Hprose与Web Service相比无论是服务的发布还是客户端的调用都更加灵活 ...
Hprose for Java 服务器(三)
自己编写Servlet发布Hprose服务 如果您对直接使用HproseServlet发布服务还有什么不满的话,当然可以自己编写一个Servlet来发布Hprose服务。而且您会发现这并不是什么难事,因为Hprose已经为您提供了很好的基础,您只需要对HproseServlet做一下扩展,或者直接使用HproseHttpService来构建自己的Servlet即可。 扩展HproseServle ...
Hprose for Java客户端(一)
同步调用 Hprose客户端在与服务器通讯时,分同步调用和异步调用两种方式。同步调用的概念和用法相对简单一些,所有我们先来介绍同步调用方式。 在同步调用方式下,如果服务器执行出错,或者通讯过程中出现问题(例如连接中断,或者调用的服务器不存在等),则客户端会抛出异常。 直接使用HproseHttpClient上的invoke方法或者采用代理接口方式都可以进行同步调用,但是只有通过invoke方法 ...
Hprose for Java客户端(二)
通过代理接口进行同步调用 看完通过invoke进行同步调用的方式后,再来看一下通过接口进行同步调用的方式。通过接口方式进行同步调用更加直观,方便,但是不支持动态调用和引用参数传递。 接口定义 为了调用上面的方法,我们需要先定义接口,下面是接口的定义: package hprose.exam; import java.util.List; import java.util.Map; public ...
Hprose for Java客户端(三)
异步调用 下面我们来开始另一个重要的话题,那就是异步调用。 异步调用相对于同步调用来说确实要难以掌握一些,但是在很多情况下我们却很需要它。那究竟什么时候我们需要使用异步调用呢? 很多时候我们并不确定在进行远程调用时是否能够立即得到返回结果,因为可能由于带宽问题或者服务器本身需要对此调用进行长时间计算而不能马上返回结果给客户端。这种情况下,如果使用同步远程调用,客户端执行该调用的线程将被阻塞,并 ...
Hprose for Java客户端(四)
异常处理 同步调用异常处理 同步调用下的发生的异常将被直接抛出,使用try...catch语句块即可捕获异常,通常服务器端调用返回的异常是HproseException类型。而如果通讯发生错误,一般为IOException类型。但是在调用过程中也可能抛出其它类型的异常,为了保险,您可以使用catch捕获Throwable类型来处理全部可能发生的异常。 另外,如果您采用代理接口方式调用,需要注意 ...
群组知识库热门文章
最新评论
我也翻译了一个.net版的Hessian,同时支持Hessian 2.0,比网上开源的那个快了5~10 ...
delphidoc 评论了 .NET 中对 PHP、Binary、SOAP、XML、JSON ...
delphidoc 评论了 .NET 中对 PHP、Binary、SOAP、XML、JSON ...