PHPRPC是面向服务的高性能远程过程调用协议。PHPRPC for java 是此协议的一种实现,详细请到官方看PHPRPC的介绍 ,以其它rpc协议的性能对比请:Java、PHPRPC、Hessian、Burlap、XML 序列化的效率对比 。我在这时只是试用下。
下载:PHPRPC 3.0.2 for Java , 解压到(如:f:/phprpc_3.0.2_for_java),然后双击make.bat生成服务与客户端,生成phprpc.jar和phprpc_client.jar两个jar,把phprpc.jar放到web项目的WEB-INF/lib目录下。
先写个模拟业务接口:Hello.java接口与其实现MyHello.java
package com.chenlb.phprpc;
/**
* 业务接口
*
* @author chenlb 2009-2-22 下午08:06:13
*/
public interface Hello {
String say(String name);
}
package com.chenlb.phprpc;
/**
* 服务器的一个模拟任务
*
* @author chenlb 2009-2-22 下午08:05:42
*/
public class MyHello implements Hello {
public String say(String name) {
return "Hello "+name;
}
}
然后发布业务(被远程调用的):rpc.jsp
<%@ page import="com.chenlb.phprpc.*" %>
<%@ page import="org.phprpc.*" %>
<%
Hello hello = new MyHello();
PHPRPC_Server phprpc_server = new PHPRPC_Server();
phprpc_server.add(hello);
phprpc_server.start(request, response);
%>
当然要把Hello.class与Myhello.class放到web项目里,如WEB-INF/classes。
编写java客户端代码,试用:
package com.chenlb.phprpc;
import org.phprpc.PHPRPC_Callback;
import org.phprpc.PHPRPC_Client;
public class PhpRpcDemo {
public static void main(String[] args) {
PHPRPC_Client client = new PHPRPC_Client("http://localhost:8080/phprpc/rpc.jsp");
Hello m = (Hello) client.useService(Hello.class);
System.out.println(m.say("chenlb"));
//也可以以 callback形式调用.
client.invoke("say", new Object[] {"other"}, new PHPRPC_Callback() {
public void handler(String result, Object[] args) {
System.out.println("handler:");
System.out.println(result);
System.out.println("args:"+args[0]);
System.out.println();
}
});
}
}
示例了两种使用方式,输出结果为:
Hello chenlb
handler:
Hello other
args:other
学习PHPRPC主要是看官方文档:http://www.phprpc.org/zh_CN/docs/
上面写的很详细,我第一次用js调用PHPRPC的服务时,没看清官方网说的,把下载下来的PHPRPC for JavaScript下的compressed 文件夹下的 phprpc_client.js 加入即可,而是直接在PHPRPC for JavaScript文件夹下的phprpc_client.js加入项目,导致不能用,所以多看官方文档。
分享到:
相关推荐
json-rpc-for-java,是仅仅不到100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持级联调用,也就是说不需要额外 的JavaScript编程,...
Phprpc是一个跨语言的远程过程调用(RPC)框架,它允许PHP和Java应用程序之间进行无缝通信。在本实例中,我们将深入探讨如何在Java环境中设置和使用Phprpc服务器,以便理解其核心概念和操作流程。 1. **Phprpc简介*...
JSON-RPC for Java 使用说明 JSON-RPC(JavaScript Remote Procedure Call)是一种轻量级的远程过程调用(RPC)协议,允许在不同语言和平台之间进行数据交换。以下是 JSON-RPC for Java 使用说明的知识点总结: ...
1. "JSON-RPC for Java使用说明.doc":这是关于如何使用该框架的文档,通常会包含安装步骤、配置指南、API参考和示例代码等。 2. "JSON-RPC.jar":这是编译后的Java库文件,包含了JSON-RPC for Java的核心组件,可以...
学习PHPRPC与java交互的例子,是初学者最后的web项目学习实例。
如果你想将 PHPRPC 用于 Delphi.NET,请参见 PHPRPC for .NET 章节的相关内容。 PHPRPC for Delphi 的安装 PHPRPC for Delphi 客户端 PHPRPC for Delphi 对容器类型的支持 PHPRPC for Delphi 对自定义类型的支持 ...
在这个Java RPC调用示例中,我们将探讨RPC的基本概念、实现机制以及如何在Java中创建一个简单的RPC框架。 首先,RPC的核心思想是将远程调用过程透明化,使得开发者可以像调用本地方法一样调用远程服务。这种抽象...
JSON-RPC(JavaScript Object Notation Remote ...总之,JSON-RPC for Java提供了在Java环境中使用JSON进行远程调用的能力,通过学习和实践提供的文档和示例,你可以掌握如何在自己的项目中有效地应用JSON-RPC技术。
phprpc for .net 源代码都有,可修改
### Json-RPC for Java中文手册知识点总结 #### 概述 `json-rpc-for-java`是一个轻量级的框架,它允许使用JavaScript快速调用Java对象,并能够返回任意类型的Java对象。这一特性使得开发者能够在无需编写额外...
JSON-RPC for Java是用于Java平台的一个轻量级、零入侵的远程过程调用(RPC)框架,特别适合于AJAX应用中的级联调用。本文档将详细介绍如何在Java项目中使用JSON-RPC,包括引入依赖库、创建服务类、自定义基类以及在...
- `examples`目录:示例代码,帮助用户快速理解和使用Phprpc。 - `build`或`dist`目录:编译后的JAR文件或者其他部署资源。 6. **使用流程**:开发者通常需要按照以下步骤使用Phprpc_3.0.2_java: - 安装并配置...
### JSON-RPC_for_Java使用说明详解 #### 概述 JSON-RPC_for_Java是一款专为Java开发者设计的轻量级、零入侵式的远程过程调用(RPC)框架,旨在简化JavaScript与Java对象之间的交互。它允许JavaScript前端直接调用...
4. **工程实例**:提供的"phprpc"压缩包可能包含一个示例工程,演示如何在Java中使用Phprpc.jar进行反序列化和RPC调用。这通常包括客户端和服务端的代码,帮助开发者了解如何配置和使用这个库。 5. **安全性考虑**...
RPC的Java实现,自己一步一步实现,有助于分布式学习的理解。
JSON-RPC-Java是一个用Java来实现动态JSON-RPC的框架. 利用它内置的一个轻级量JSON-RPC JavaScripIt客户端,可以让你透明地在JavaScript中调用Java代码。JSON-RPC-Java可运行在Servlet容器中如Tomcat也可以运行在...
在这个“rpc.rar_phprpc java”压缩包中,我们关注的是PHP与Java之间的RPC通信。PHPRPC是一个轻量级、高效且易于使用的跨语言RPC框架,支持PHP与Java之间的数据交互。 PHPRPC是为了解决PHP和Java之间进行远程调用的...
继《JavaScript高级应用与实践》之后推出的json-rpc-for-java开源代码,是仅仅100行的javascript代码和不到10个java文件实现的超级轻量级的通过 javaScript快速调用java对象并返回任意对象的轻量级框架,并且支持...