首頁 >後端開發 >php教程 >PHP-Java-Bridge使用筆記

PHP-Java-Bridge使用筆記

WBOY
WBOY原創
2016-07-29 09:04:521263瀏覽

這是我在做平安銀行開發的時候,本地使用PHP環境,平安銀行介面為Java介面的時候,採用PHP-Java-Bridge的方式呼叫介面的筆記。因為現在網上的教程基本上都不行了,所以在這裡貼出我能使用的而且目前網上最新的版本(2014-09-19),如果有錯,請通過郵件聯繫,謝謝。

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

* @作者ken(695093513@qq.com)

* @日期    2014-09-09

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

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

* 版本與環境

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

版本:

1、PHP版本:最高為5.4,目前測試為5.4/5.3

2、JDK:官方最新版本,目前測試為1.8

3、php-java-bridge:官方最新版本,目前測試為6.2.1

4、作業系統:Windows7 32位元/64位元| Linux(Centos6.5)

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

* 安裝使用

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

第一步驟:安裝

1、JDK的安裝:正常安裝即可,並配置好環境變數

2、PHP的安裝:正常安裝即可

3、php-java-bridge的安裝:

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

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

③等待Tomcat執行解析,會在該目錄下面產生相同名字的資料夾

④將該資料夾拷貝到Apache伺服器下面使用

(註:網上的教程可以正常使用,調用java系統函數和簡單的jar包,但是對於復雜的jar包會遇到各種各樣的問題,所以建議使用這種方式)

第二步:使用

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

2、盡可能的將jar包放到java虛擬機下面,即jre安裝下面(比如:C:Program FilesJavajre1.8.0_20libext)

3、在PHP文件中不需要再引用jar包,因為放到虛擬機下面去了,java會自動呼叫

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

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

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

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

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

1、高版本的java_require不再使用,也無法使用,由於放到java虛擬機下面,則不需要再手動引入包文件

2、java_value()用於獲取值,而且必須使用該函數取得值

​​(特別注意:如果該值需要存入資料庫,那麼必須使用該java_value函數,不然會報錯,或無法存入資料庫)

3、java_inspect()對實例化或方法進行print_r類似的輸出

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

4、實例化使用$test = new Java("Test")的方式,如果實例化的方法中存在參數,可以這樣new Java("Test","pram")

注意事項:

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

2、務必確保對jar套件放在能引用的地方,例如java虛擬機器jre下面

3、在PHP中調用Java使用PHP的的寫法即可

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

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

* 附錄2:PHP實例代碼

* 附錄3:PHP-Java-bridge檔案包解壓縮後目錄圖

*

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

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

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

以上就介紹了PHP-Java-Bridge使用筆記,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:PHP之進位轉換下一篇:PHP之進位轉換