PHP4调用JavaBean的摸索(转载佚名)

PHP4调用JavaBean的摸索
文章作者:佚名      发布时间:2004-6-16 12:18:47

首先声明,写此文时,我对这个也不懂,只是自己从php.net上下了例子,试着做了一下,而且是在 win2000+apache+php4p12配置下. 具体步骤如下: 一、安装好JVM(java virtual machine)(我用的是jdk122)

当然,您不一定要用jdk122,甚至不用jdk,用其它的,比如:
JVM=Kaffe 1.0.4 (as delivered with OS), OS=Redhat Linux 6.1
JVM=Kaffe 1.0.5 (built from source), OS=Redhat Linux 6.1
JVM=IBM 1.1.8, OS=Redhat Linux 6.1
JVM=Blackdown 1.2.2 RC4, OS=Redhat Linux 6.1
JVM=Sun JDK 1.1.8, OS=Windows NT 4/win2000
但是,在这里我只讲我的做法,其它的我没有试过,不要问我,这里要特别注意的是, 根据php官方站点的说明,竟然不支持jdk122+linux
二、设置环境变量

在win2000中"我的电脑"->"属性"->"高级"->"环境变量"
设置JAVA_HOME
为:jdk路径,比如我的jdk122装在e:jspjdk122下,那么就设置为e:jspjdk122

三、下载相关文件(如果您没有的话)

下载地址:http://www.php.net/downloads.php
我下载了:php-4.0.1-Win32-java-jdk122.zip文件,解压后有几个例子,并且有:php_java.dll和php_java.jar文件.
四、配置php.ini文件

[java]
java.class.path=E:PHP4php_java.jar
java.home=E:jspjdk122bin
extension=php_java.dll
java.library.path=E:PHP4ext
java.library=E:Program FilesJavaSoftJRE1.2binclassicjvm.dll
以上是我的配置,说明一下,我的php4在e:php4目录下,我的所有扩充的dll文件 放在e:php4ext目录下,当然php_java.dll也就应该copy到这个目录了.最后确认你的 win2000下有jvm.dll文件,如果没有,安装一下visual studio就可以了(我用装了个VC++6,所以不用考虑了)
五、测试

运行phpinfo()就可以看到有"java"了,如果没有,说明你没有成功.它的显示如下:

java
Directive Local Value Master Value
java.class.path
E:PHP4php_java.jar E:PHP4php_java.jar
java.home
E:jspjdk122bin E:jspjdk122bin
java.library
E:Program FilesJavaSoftJRE1.2binclassicjvm.dll jvm.dll
java.library.path
E:PHP4ext no value


六、测试例子

我用的是下载的文件中包含的例子:jver.php,如果成功,将有如下结果:
Java version=1.2.2
Java vendor=Sun Microsystems Inc.
OS=Windows NT 5.0 on x86
星期三, 七月 19, 2000 at 10:32:53 下午 GMT+08:00


七、再次说明

我目前还遇到两个具体的而且又是必须解决的问题:

(一)怎么调用自己写的javabean
(二)IIS+win2000+php4p12还没有成功
请了解以上问题的前辈指点在下,将感激不尽!
PHP4调用JavaBean的摸索(续)
文章作者:佚名      发布时间:2004-6-16 12:11:21

写了“PHP4调用JavaBean的摸索”一文,后来想试试用自己写的JavaBean,怎么也不行,请教了不少人,终于弄明白了,在这里我要感谢廖阳,其实我也对他不熟悉,但是,他确实给了我不少帮助。

声明一下,我下面的例子都是在Win2000/IIS5/CGI/PHP4dev2/Jdk13下实现的。

下面我对以前的一文进行补充,另外做了几个简单的例子。

补充:下一个好的PHP4版本,我一直很喜欢http://www.mm4.de/下的PHP4版本。下载后,它自己带了一个php.ini,已经支持java了,你在java.class.path中再加上你自己的java class的目录,比如:f:php4class,你以后自己做的java class就以它为“根”(带java的package,就在这里建立子目录)

好了,下面些一个简单的例子显示伟大的“Hello World!”

编写一个简单的java文件(这里我用的是廖阳的例子,为了表示感谢,我没有做任何改动)

test1.java文件如下:

package tests;

public class test1

{

public String getMessage()

{

return "Hello World";

}

}

用javac test1.java生成test1.class文件,将test1.class copy到f:php4class下的tests子目录下(这里是java package的需要)

编写php文件,getmsg.php4文件如下:

<?

$b=new Java("tests.test1");

$x=$b->getMessage();

echo $x;

?>

在浏览器中访问getmsg.php4将显示“ Hello World!”

再举个例子:

test.java文件内容如下:

import java.lang.*;

public class test{

public int ret_test(int i)

{

if (i>0) return 31;

if(i==0) return 30;

if (i<0) return 29;

return 100;

}

}

编译后放在f:php4class目录下,名称当然为:test.class

编写一个PHP4文件testint.php4如下:

<?

$b=new Java("test","");

$x=$b->ret_test(4);

echo $x;

?>

访问将显示31。

后来,我自己做了一个调用SQL数据库的javabean,在PHP4中一切正常,大家可以自己去试,确实不错,从某种程度上,可以说,实现了“隐藏源代码”。

欢迎有兴趣的朋友交流。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值