您的位置:首页 > 理论基础 > 计算机网络

【本文已迁移到“程序员文摘” http://programmerdigest.cn/category/lajp】LAJP系列教程-第二部分-HelloWorld(Linux socket)

2009-09-29 19:48 585 查看
【本文已迁移到“程序员文摘” http://programmerdigest.cn/category/lajp】[/code] 

Linux下的socket模式hello world

安装之前:

系统要求: Linux,安装好Apache、PHP环境

Java JDK:1.5以上。

安装配置:

下载 lajp-socket_9.09.zip
lajp-socket_9.09.tar.gz
,解压:

lajp-socket_9.09 //socket版

|

|--java

| |

| |--hello //Hello World示例程序

| | |

| | |--HelloClass.class

| | +--HelloClass.java

| |

| |--lajp_9.09.jar //Java服务端主程序

| |--run.sh //运行脚本(Unix/Linux)

| +--run.bat //运行脚本(Windows)

|

+--php

|

+--php_java.php //PHP脚本

解开后有两个子目录,将php目录中的php_java.php文件复制到Apache+php环境中的发布目录,备用。

编写PHP文件:

001 <?php header("Content-Type:text/html;charset=utf-8"); ?>

002

003 <?PHP

004 require_once("php_java.php"); //引用下载的php_java.php文件

005

006 $name = "Ali";

007

008 try

009 {

010 //调用Java的hello.HelloClass类中的hello方法

011 $ret = lajp_call("hello.HelloClass::hello", $name);

012 echo "{$ret}<br>";

013 }

014 catch (Exception $e)

015 {

016 echo "Err:{$ret}<br>";

017 }

018 ?>

运行:

1. 运行脚本程序run.sh,显示:

-------------------------------------------

- Start LAJP-JAVA(socket)...

- time:Tue Sep 22 22:56:09 CST 2009

-------------------------------------------

Listen port: 21230

set charser: UTF-8

以上信息表示Java服务已经运行。

2. 打开浏览器,访问刚创建的php程序地址,页面显示:"Hello World! Ali"。

OK,Hello World程序演示结束。

解释:

在下载的zip文件的Java程序中,带有一个LAJP服务,服务类是HelloClass.class,我们看它的源代码HelloClass.java:

001 package hello;

002

003 public class HelloClass

004 {

005 public static final String hello(String userName)

006 {

007 return "Hello World! " + userName;

008 }

009 }

当php程序执行到 $ret = lajp_call("hello.HelloClass::hello", $name)语句时,发生如下事情:

1. lajp_call函数参数"hello.HelloClass::hello"告诉LAJP,我要访问hello.HelloClass类中的hello方法,并且传给它一个参数$name。

2. 在lajp_call函数内部将请求包装为消息包,通过socket发送给Java服务

3. Java端的LAJP程序接收消息报,解析调用含义,找到HelloClass类和hello方法,执行方法调用,再将方法返回值包装为消息包,socket回PHP程序

4. PHP端lajp_call函数解析返回消息包,得到其中的字符串"Hello World! Ali"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐