jessen163 发表于 2013-1-29 09:01:25

一个PHPRPC的JAVA例程

PHPRPC 最大的一个亮点就是它支持在浏览器环境中通过 JavaScript 来调用服务器端的函数与方法,它将你以前用传统的 ajax 方式做不到或者很难做到的事情变得轻而易举!而在这个亮点中更大的亮点是,它还支持在浏览器环境中直接跨域调用。而且在跨域方面,它还针对不同的应用作了不同的实现。这是 SOAP 所做不到的。


一个PHPRPC的JAVA小例程,实现用户名的检测
客户端(server_user.jsp):
<html><TITLE> Sign users </TITLE><head><script type="text/javascript" src="phprpc_client.js"></script></head><body><div align="center">帐号:<input type="text" id="username" />密码:<input type="password" id="password" /><input type="button" value="登录" id="loginbtn" /></div><div id="feedback"></div>    <script type="text/javascript">...               var username = document.getElementById('username').value;      var password = document.getElementById('password').value;      var feedback = document.getElementById('feedback');         var rpc_client = new PHPRPC_Client('http://localhost:8080/phprpc/signuser/server_user.jsp', ['validate']);      document.getElementById("loginbtn").onclick= function() ...{         feedback.innerHTML = "waiting...";            rpc_client.validate(username, function (result) ...{             feedback.innerHTML= result;         });         }       </script></body></html>

服务器端(server.jsp):
    <%@ page import="org.phprpc.*" %>       <%@ page import="classmate.*" %>       <%      PHPRPC_Server phprpc_server = new PHPRPC_Server();         SignUpAction sign=new SignUpAction();   phprpc_server.add("validate", sign);      phprpc_server.start(request, response);       %>   

类方法 (两个:SignUpAction.java,DB.java):

package classmate;import java.io.IOException;import java.io.PrintWriter;import java.sql.*;public class SignUpAction ...{    public String validate(String uname)...{            String result="";      //创建输出流对象      //数据库操作         DB db = new DB();               ResultSet rs;         int insRes = 0;         String strSql=null;      //判断用户名是否重复         strSql = "select * from users where Uname='" + uname + "'";         rs = db.executeQuery(strSql);      try...{                        if (!rs.next()) ...{                           result="user is ok";                            } else...{                               result="user is occpied";             }         }                  catch(SQLException e)...{         e.printStackTrace();          }                     return result;   }}
页: [1]
查看完整版本: 一个PHPRPC的JAVA例程