码迷,mamicode.com
首页 > 编程语言 > 详细

PHP JAVA Bridge桥的最新使用

时间:2014-12-14 21:15:06      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   io   ar   color   os   使用   sp   

PHPJava之间搭建一座桥梁,利用这座桥梁在这两个实体之间建立起一个沟通渠道,在这座桥梁的帮助下,你可以在Java中开发类,然后在PHP中调用它们的方法,同样,在你的Java桌面或Web应用程序中也可以使用PHP脚本。

http://php-java-bridge.sourceforge.net/pjb/PHP JAVA Bridge的官方网站。可以在此网站查看PHP JAVA Bridge的详细资料。

 

安装和配置PHP/Java

最新的PHP/Javazip包可在http://sourceforge.net/projects/php-java-bridge/files/下载JavaBridgeTemplate611.war,此包大小为523KB安装过程依赖于选择哪个Java平台通过这座桥与PHP脚本交互。下面是安装javaphp需要的环境和版本。

 

安装J2SE 1.6或更高版本

配置java环境变量(这个很简单我就不多说了)

 

安装PHP 5.2.6或更高版本

    修改php.ini文件中的配置为:

       

  allow_url_fopen = On

  allow_url_include = On

 

 

 

   重启Apache。

安装java_EE_sdk-6

    把下载到的JavaBridgeTemplate611.war(此包的文件名可以修改)直接复制到java_EE_sdk-6的安装目录的C:\glassfishv3\glassfish\domains\domain1\autodeploy 下。

    然后把编译好的java类文件的jar包放入到JavaBridgeTemplate611.war中的lib目录下(跟JavaBridge.jar包在同一目录下)。重启Java EE 6 SDk。

这样就可以在php文件中调用java的方法了。

下面是我的写的java的一个测试的类,文件名为test.java:

public class test {

 public String name = "";
 
 public void setname(String name){
  this.name = name;
 }
 
 public String getname(){
  return this.name;
 }
 
 public float add(float num1, float num2){
  return num1 + num2;
 }

}

 

 

把test.java文件打成test.jar包,然后放到JavaBridgeTemplate611.war中的lib目录下(跟JavaBridge.jar包在同一目录下)。重启Java EE 6 SDk。

下面是php的测试文件test.php

<?php

header(‘Content-type: text/html; charset=utf-8‘);
require_once("http://localhost:8080/JavaBridgeTemplate611/java/Java.inc");
// get instance of Java class java.lang.System in PHP
$system = new Java(‘java.lang.System‘);

// demonstrate property access
echo ‘Java version=‘ . $system->getProperty(‘java.version‘) . ‘<br/>‘;
echo ‘Java vendor=‘ . $system->getProperty(‘java.vendor‘) . ‘<br/>‘;
echo ‘OS=‘ . $system->getProperty(‘os.name‘) . ‘ ‘ .
             $system->getProperty(‘os.version‘) . ‘ on ‘ .
             $system->getProperty(‘os.arch‘) . ‘ <br/>‘;

// java.util.Date example
$formatter = new Java(‘java.text.SimpleDateFormat‘,
                     "EEEE, MMMM dd, yyyy ‘at‘ h:mm:ss a zzzz");

echo $formatter->format(new Java(‘java.util.Date‘));

echo ‘<br/>‘;

//下面是php调用自己编写的test.java的方法。

        $test = new java("test");                //产生实例“test”是java的jar包名。
        $test->setname("php调用java的方法!");        //后面的调用就跟在php中调用类方法一样
        
        echo "调用类test的getname方法,返回值为:------------".$test->getname()."<br>";
        echo "调用test的add方法,返回值为:--------".$test->add(11.9, 15.2);

?>

 

 

然后运行test.php文件,如果得到下面的结果,表示配置和调用成功。

Java version=1.6.0_10-rc2
Java vendor=Sun Microsystems Inc.
OS=Windows XP 5.1 on x86
星期二, 四月 06, 2010 at 4:57:59 下午 中国标准时间
调用类test的getname方法,返回值为:------------php调用java的方法!
调用test的add方法,返回值为:--------27.099998

PHP JAVA Bridge桥的最新使用

标签:style   blog   http   io   ar   color   os   使用   sp   

原文地址:http://www.cnblogs.com/lsl8966/p/4163020.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!