连接PHP和 Java -- PHP/Java Bridge [3]

发布时间:2016-12-10 16:58:36 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"连接PHP和 Java -- PHP/Java Bridge [3]",主要涉及到连接PHP和 Java -- PHP/Java Bridge [3]方面的内容,对于连接PHP和 Java -- PHP/Java Bridge [3]感兴趣的同学可以参考一下。

Haohappy PHP5研究中心:http://blog.csdn.net/haohappy2004/ 安装PHP/Java Bridge如果你用的是RedHat Linux系统(RedHat Enterprise或Fedora),可以从主页上下载32位RPM包,然后输入rpm -i php-java-bridge-v.x.y-z-i386.rpm来安装。如果你用的是64位系统和64位虚拟机,需要安装64位RPM包。其它系统看下面的介绍。(1) 在安装PHP/Java Bridge之前,你需要确定已经安装了: Java1.4或更高版本, gcc3.2或更高版本, apache1.3或更高版本, autoconf2.57或更高版本,Done libtool 1.4.3或更高版本, Done automake1.6.3或更高版本, GNU make Done php4.3.2或更高版本你可以用命令java -version, gcc --version, apachectl -version, libtool --version, automake --version, make null --version, autoconf --version and php-config –version来确定这些软件包的版本。(2) 下载PHP/Java Bridge的源代码 http://www.sourceforge.net/projects/php-java-bridge(3)解压缩:cat php-java-bridge_v.x.y.tar.bz2 | bunzip2 | tar xf –(4) 在解压缩出来的目录php-java-bridge-v.x.y里执行命令: phpize && ./configure --disable-servlet --with-java=/opt/IBMJava2-14 && make CFLAGS="-m32"为32位JVM生成模块。(5)安装生成的模块 su -c 'make install' (6) PHP/Java Bridge可以作为WEB服务器的sub-component运行,把下面这行加入到php.ini中,或者把这一行写到一个文件java.ini,再把java.ini复制到包含php模块描述的目录中去,如/etc/php.d/。extension = java.so [java](7)重启apache服务器:/www/apache/bin/apachectl restart(8)现在开始可以测试web安装。复制test.php到站点根目录下(如 /var/www/html),通过浏览器访问。你可以看到bridge模块已经激活并正在运行。Bridge会随着服务器的启动而启动。Test.phpphpinfo();print "/n/n"; $v = new java("java.lang.System");$arr=$v->getProperties();foreach ($arr as $key => $value) {  print $key . " -> " .  $value . "/n";}?> Windows平台下的安装:1.              解压缩php-java-bridge_2.0.4-win32-php5.zip,复制所有文件到C:/php下2.              双击c:/php5/JavaBridge.jar或者在命令行执行java -jar JavaBridge.jar3.              php-cgi test.php >result.html    (test.php源码见上例)4.              用浏览器打开result.html,即可看到运行结果  段测试程序首先把php环境的所有选项输出,然后新建了一个Java对象并返回它的相关信息。 运行结果: java.runtime.name -> Java(TM) 2 Runtime Environment, Standard Edition sun.boot.library.path -> C:/Program Files/Java/j2re1.4.2_05/bin java.vm.version -> 1.4.2_05-b04 java.vm.vendor -> Sun Microsystems Inc. java.vendor.url -> http://java.sun.com/ path.separator -> ; java.vm.name -> Java HotSpot(TM) Client VM file.encoding.pkg -> sun.io user.country -> CN sun.os.patch.level -> Service Pack 2 java.vm.specification.name -> Java Virtual Machine Specification user.dir -> C:/php java.runtime.version -> 1.4.2_05-b04 java.awt.graphicsenv -> sun.awt.Win32GraphicsEnvironment java.endorsed.dirs -> C:/Program Files/Java/j2re1.4.2_05/lib/endorsed os.arch -> x86 java.io.tmpdir -> C:/DOCUME~1/506C/LOCALS~1/Temp/ line.separator -> java.vm.specification.vendor -> Sun Microsystems Inc. user.variant -> os.name -> Windows XP sun.java2d.fontpath -> java.library.path -> C:/Program Files/Java/j2re1.4.2_05/bin;.;C:/WINDOWS/system32;C:/WINDOWS;C:/j2sdk1.4.2_05/bin;.;C:/j2sdk1.4.2_05/lib;C:/j2sdk1.4.2_05/jre/lib;C:/Program Files/SecureCRT 3.0;C:/WINDOWS/system32;C:/Program Files/ChemOffice2002/Common/DLLs java.specification.name -> Java Platform API Specification java.class.version -> 48.0 java.util.prefs.PreferencesFactory -> java.util.prefs.WindowsPreferencesFactory os.version -> 5.1 user.home -> C:/Documents and Settings/506C user.timezone -> java.awt.printerjob -> sun.awt.windows.WPrinterJob file.encoding -> GBK java.specification.version -> 1.4 java.class.path -> C:/php/JavaBridge.jar user.name -> 506C java.vm.specification.version -> 1.0 java.home -> C:/Program Files/Java/j2re1.4.2_05 sun.arch.data.model -> 32 user.language -> zh java.specification.vendor -> Sun Microsystems Inc. awt.toolkit -> sun.awt.windows.WToolkit java.vm.info -> mixed mode java.version -> 1.4.2_05 java.ext.dirs -> C:/Program Files/Java/j2re1.4.2_05/lib/ext sun.boot.class.path -> C:/Program Files/Java/j2re1.4.2_05/lib/rt.jar;C:/Program Files/Java/j2re1.4.2_05/lib/i18n.jar;C:/Program Files/Java/j2re1.4.2_05/lib/sunrsasign.jar;C:/Program Files/Java/j2re1.4.2_05/lib/jsse.jar;C:/Program Files/Java/j2re1.4.2_05/lib/jce.jar;C:/Program Files/Java/j2re1.4.2_05/lib/charsets.jar;C:/Program Files/Java/j2re1.4.2_05/classes java.vendor -> Sun Microsystems Inc. file.separator -> / java.vendor.url.bug -> http://java.sun.com/cgi-bin/bugreport.cgi sun.io.unicode.encoding -> UnicodeLittle sun.cpu.endian -> little sun.cpu.isalist -> pentium i486 i386 到这里,我们就可以自由地和Java对象进行通讯,实现了PHP和Java的桥接。5.              接下来修改你的php.ini(C:/Windows/php.ini),把extension=php_java.dll前的分号;去掉注意, php也自带有一个php_java.dll,位于C:/php/extensions下,和php-java-bridge提供的不一样。为避免出错,要注意设置php.ini中的extension_dir ,默认extension_dir = "./"即指向C:/php目录。 参考资料:[1] JSR 223: Scripting for the JavaTM Platform[2] PHP/Java Bridge @ sourceforge.netTrackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=627896

上一篇:相信百度没错!
下一篇:连接PHP和 Java -- PHP/Java Bridge [2]

相关文章

相关评论