PHP-Java-Bridge使用筆記,2014年9月最新版

/**============================================================php

* @author   ken(695093513@qq.com)java

* @date    2014-09-09web

*數據庫

==============================================================**/apache


/**============================================================服務器

* 版本與環境app

*webapp

==============================================================**/函數

版本:測試

一、PHP版本:最高爲5.4,當前測試爲5.4/5.3

二、JDK:官方最新版本,當前測試爲1.8

三、php-java-bridge:官方最新版本,當前測試爲6.2.1

四、操做系統:Windows7 32位/64位 | Linux(Centos6.5)



/**============================================================

* 安裝和使用

*

==============================================================**/

第一步:安裝

一、JDK的安裝:正常安裝便可,並配置好環境變量

二、PHP的安裝:正常安裝便可

三、php-java-bridge的安裝:

①先下載Java服務器Tomcat正常安裝,安裝好後,開啓Tomcat服務器

②將下載的php-java-bridge包放到webapps下面

③等待Tomcat執行解析,會在該目錄下面生成相同名字的文件夾

④將該文件夾拷貝到Apache服務器下面使用

(注:網上的教程能夠正常使用,調用java系統函數和簡單的jar包,可是對於複雜的jar包會遇到各類各樣的問題,因此建議使用這種方式)



第二步:使用

一、不須要開啓Tomcat(最好關閉掉),開啓apache服務器,雙擊運行javabridge.jar,選擇8080端口(javabridge.jar也須要放到java虛擬機下面,參見下面第二點規則)。

二、儘量的將jar包放到java虛擬機下面,即jre安裝下面(好比:C:\Program Files\Java\jre1.8.0_20\lib\ext)

三、在PHP文件中不須要再引用jar包,由於放到虛擬機下面去了,java會自動調用

(注:第1點中的javabridge.jar是在第一步:安裝中第3點中得到的)



/**============================================================

* 其餘使用方法和注意事項

*

==============================================================**/

關於PHP-Java-Bridge的各類函數使用:

一、高版本的java_require再也不使用,也沒法使用,因爲放到java虛擬機下面,則不須要再手動引入包文件

二、java_value()用於獲取值,並且必須使用該函數獲取值

(特別注意:若是該值須要存入數據庫,那麼必須使用該java_value函數,否則會報錯,或者沒法存入數據庫)

三、java_inspect()對實例化或者方法進行print_r相似的輸出

(注:請不要直接使用var_dump這樣的輸出方法輸出java的類、方法、變量,須要使用java_inspect或者java_value,例如:var_dump(java_inspect($abc)))

四、實例化使用 $test = new Java("Test")的方式,若是實例化的方法中存在參數,能夠這樣new Java("Test","pram")


注意事項:

一、務必確保對java.inc的引用,確保引用正確

二、務必確保對jar包放在能引用的地方,好比java虛擬機jre下面

三、在PHP中調用Java使用PHP的的寫法便可


/**============================================================

* 附錄1:各類報錯問題處理

* 附錄2:PHP實例代碼

* 附錄3:PHP-Java-bridge文件包解壓後目錄圖

*

==============================================================**/

附錄1:各類報錯問題處理

一、參照上面的「其餘使用方法和注意事項」,大多數問題都是路徑引用的問題,只要處理好了,正確得到了,就不會出問題



附錄2:PHP實例代碼

require_once("/java/Java.inc");

$util = new Java("com.sdb.payclient.core.PayclientInterfaceUtil");

$input = new Java("com.ecc.emp.data.KeyedCollection");

$signDataput = new Java("com.ecc.emp.data.KeyedCollection");

$input->put("masterId","111111");

$input->put("orderId","222222");

$signDataput = $util->getSignData($input);

$orig = java_values($signDataput->getDataValue("orig"));

$sign = $signDataput->getDataValue("sign");

echo java_values($sign);



附錄3:PHP-Java-bridge文件包解壓後目錄圖

bridge

--java

java.inc

JavaProxy.php

--WEB-INF

--cgi

--...

--lib

php-script.jar

php-servlet.jar

--pear

web.xml

weblogic.xml

相關文章
相關標籤/搜索