999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Web開發技術實現PHP調用Java類研究

2018-03-26 02:14:46余楊奎
軟件導刊 2018年3期
關鍵詞:程序方法系統

余楊奎

摘要:

在“互聯網+”時代,Web開發技術日新月異,平臺開發不再依靠同一種Web開發技術,跨平臺調用數據也屢見不鮮。為提高PHP的跨平臺性和擴展性,通過PHP和Java橋接技術,真正實現Web三層架構。針對PHP和Java在技術引用上存在互補的特點,利用phpJavabridge橋接方式,使用PHP程序調用jar里的Java類以判斷Java版本、服務器操作系統以及操作系統版本,同時使用PHP程序調用自定義jar類的Reducefloat方法,完成減法運算。將兩種技術有效結合起來,使通過PHP開發新接口程序需要調用Java方法時,可以減少對原有服務端程序的修改,為PHP開發技術的跨平臺性和擴展性提供了技術論證。

關鍵詞:

PHP;環境變量;自定義類;橋接

DOIDOI:10.11907/rjdk.172532

中圖分類號:TP319

文獻標識碼:A文章編號文章編號:16727800(2018)003012103

英文摘要Abstract:“Internet +” times, change rapidly of Web development technology,platform development no longer rely on the same kind of Web development technology, It is often seen that called cross platform data. In order to improve the scalability and PHP cross platform, through PHP and Java bridging PHP technology, realize the three layer structure of Web for PHP and Java, there is a complementary characteristic in the technology reference, using phpJavabridge bridge, using the PHP program called jars Java class to determine the Java version, the server operating system and operating system version. The Reducefloat method also use a custom jar class called PHP program, complete the subtraction operation. The two techniques are effectively combined, through the development of new PHP interface program to call the Java method, can be reduced to the original server program changes, provide technical demonstration of cross platform and scalability of PHP development technology.

英文關鍵詞Key Words:PHP;environment variables; custom classes; bridges

0引言

PHP是一種專業的開放性網站開發語言,其語言風格和C語言類似[1]。PHP在Web開發中占據著重要地位,通常PHP開發環境會提供一個Web的應用程序框架,如Thinkphp、FDF框架等。在框架開發的基礎上,采用MVC模式,對Web進行了模型、控制器及視圖的分離,提高了程序開發效率。因此,PHP深受Web開發者的喜愛。

PHP作為一種動態腳本語言,簡單易學,初學者容易上手,在Web開發方面具有獨特優勢,如開放源代碼、跨平臺性強、開發效率高,但它在企業級應用中運用并不廣泛,大型企業應用的市場占有率不高。Java是一種成熟的開發平臺,在項目開發技術上,企業級應用首選Java技術,但基于Java的Web開發技術,比如JSP、HTTP Servlet[2]等,結構相對復雜,要求程序員技術全面,不利于初學者快速進行Web應用開發。

在Web應用開發中,經常會遇到不同Web開發技術需要進行數據對接。企業在市場定位時,基于安全性考慮選擇了Java技術,并在Java技術開發以及數據設計上投入了大量資金,但由于各種原因導致Java開發人才流失時,PHP程序相對簡單、容易上手,可采用PHP程序調用Java方法。Java在結構設計上更加安全,因此銀行系統都是采用Java技術開發。當第三方公司需要接入銀行系統時,涉及的報文需要進行加密、解密以及數字簽名等數據交互。

“信融天下互聯網金融P2P網貸系統”基于PHP框架開發,按照銀監會監管要求,從會員資金安全方面考慮,互聯網金融P2P網貸系統需要進行銀行存管,這就意味著信融天下互聯網金融P2P網貸系統需要對接銀行存管系統。對接銀行存管發送的Java數據報,摒棄原有的PHP系統,重新使用Java技術開發,在功能和配置上,必定會浪費更多人力、物力和財力資源。筆者在開發過程中發現,可以通過橋接技術,生成銀行系統需要的報文發送給銀行方處理,并且可以處理銀行端返回的報文,生成自身需要的報文格式。

PHP和Java在技術引用上存在很大互補性,將兩種開發技術結合起來,各取所長,可以避免很多人力財力浪費。同時,廣播電視大學正在向開放大學轉型,開放大學作為一種新型大學,同時也是一個體系和一個平臺,即社會各方資源的協同學習型平臺。利用php-Java-bridge橋接方式,完成PHP程序調用jar里的Java類或自定義方法,在開放大學轉型中實現平臺建設也有著重要意義。

1研究現狀及目的、方法

1.1研究現狀

國內也有很多學者對PHP和Java虛擬機對接進行了研究,李文兵、朱可[3]提出WebSphere sMash框架,可以讓基于PHP開發的Web應用程序運行在JVM上,提高PHP與Java的互聯互通能力;鄧紅梅[4]在PHP和Java虛擬機之間通過嵌入式連接,在不影響Java原本運行效率的基礎上,提高PHP的運行效率,實現數據資源共享;肖文鵬[5]在Linux環境下安裝和配置PHP的Java擴展模塊,利用PHP的Java擴展模塊在PHP腳本中創建并調用Java對象;勞建成、蔣遷謙[6]在PHP和Java之間,選擇使用應用層HTTP協議和PHP實現客戶端和服務端的數據交互消息;李嵐[7]提出了Linux下使用PHP程序調用JDK類可行的解決方案。

1.2研究目的

在前人研究的基礎上,筆者通過技術創新,利用phpJavabridge實現PHP中調用Java平臺封裝在jar包里的class類和方法,將PHP和Java進行無縫對接,給廣大PHP程序員全新的體驗。該方法結合PHP開發語言的特點,大大提高了Web開發者的工作效率。

1.3實驗方法

本文首先通過文獻研究法,了解PHP與Java互聯互通技術的應用,然后再根據《信融天下互聯網金融P2P網貸系統》開發案例進行實證研究,實現PHP程序調用Java類。

2phpJavabridge安裝與配置

考慮學習的便利性,選擇使用Windows 7操作系統、IIS 7.0配置Web服務器。

2.1IIS安裝配置

安裝好IIS后,對應用程序池進行設置。

2.2PHP安裝

為方便配置PHP,選擇使用護衛神·PHP套件,在網站配置目錄下使用phpinfo()指令,運行查看PHP配置結果。

2.3Java環境安裝與環境變量配置

選用jdk8u121windowsx64配置Java環境,安裝完成后配置環境變量步驟如下:

(1)新建系統變量。在“新建系統變量”對話框中,“變量名”輸入“JAVA_HOME”,在“變量值”輸入JDK的安裝路徑。

(2)設置PATH變量。單擊“編輯”按鈕,在“變量值”文本框添加“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;”或者“%JAVA_HOME%\bin;”。

(3)設置CLASSPATH 變量。選擇“編輯”,在“變量值”開始的地方添加內容:“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”。

(4)測試環境變量配置。通過CMD命令輸入“JAVAC”,查看輸出結果,判斷是否配置成功[8]。

2.4phpjavabridge配置

(1)下載JavaBridge.jar,在搭建Web應用程序服務器時,作為PHP與Java橋接的應用程序包,放置在Java安裝目錄jre1.8.0_121\lib\ext目錄下。

(2)解壓JavaBridge.jar,放置在配置好的Web服務器根目錄下。其中JavaBridge\METAINF\java目錄下有一個名為Java.inc的文件,在該文件里,提供了PHP程序語言調用Java類的方法。

(3)雙擊JavaBridge.jar啟動橋接接口,這里8080是常用端口,也可以設置為其它端口。

3PHP調用JDK中的Java類

header("Contenttype:text/html;charset=utf8");//設置編碼格式,避免出現亂碼

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

MYMsystem = new Java( 'java.lang.System' );

echo "Java版本是:".MYMsystem>getProperty('java.version')."

";

echo "操作系統是:".MYMsystem>getProperty('os.name')."

";

echo "操作系統版本是:".MYMsystem>getProperty('os.version');

瀏覽器運行返回結果如下:Java版本是1.8.0_121,操作系統是Windows Server 2008 R2,操作系統版本是6.1。

4自定義Java方法調用

4.1自定義Java類

自定義Java類并打包成testjava.jar存放到JDK安裝目錄的ext目錄下。需注意的是,每次增加或修改jar,都需要重新啟動JavaBridge。

public class testjava {

public String name = "";

public void setname (String name){

this.name = name;

}

public String getname (){

return this.name;

}

public float Reducefloat(float num1, float num2){

return num1 num2;

}

}

4.2使用php文件調用自定義Java類

require_once("/JavaBridge/java/Java.inc");//引用PHP語言調用

MYMtestjava = new java("testjava"); //產生實例“testjava”是Java的jar包名

MYMtestjava >setname ("php調用Java的自定義方法!");//后面使用PHP程序語句對Java類中的方法進行調用

echo "使用PHP方法調用自定義的testjava類里的getname方法,返回:".MYMtestjava>getname ()."

";

echo "使用PHP方法調用自定義的testjava類里的Reducefloat方法,返回:".MYMtestjava> Reducefloat (15,9);

瀏覽器運行返回結果如下:

使用PHP方法調用自定義的testjava類里的getname方法,返回:php調用Java的自定義方法。

使用PHP方法調用自定義的testjava類里的Reducefloat方法,返回:6。

5結果分析

通過以上實驗結果得出結論,使用PHP開發語言可以對JDK中的Java類以及自定義的Java類進行調用,即利用橋接方式,用PHP語言調用jar包中的Java類和自定義方法。Sun公司的白皮書[9]比較了PHP、Java Servlet等技術的功能,結論是PHP可以滿足短期目標,具有可移植性,而Java Servlet具有平臺無關性等優點,本實驗可以作為文獻[9]的一個補充,從技術角度對PHP和Java兩種開發語言進行橋接。

6結語

使用phpjavabridge實現PHP調用Java類的技術,有利于PHP程序的擴展。從安全性角度看,可以真正實現Web應用的三層架構。特別是企業在Java上投入大量資金的情況下,需要使用PHP進行擴展,只要利用好phpjavabridge技術,可以大大節約開發成本。同時,在開放大學轉型之際,對構建社會各方資源的協同學習型平臺具有一定參考價值。

參考文獻參考文獻:

[1]梁廣浩.搭建框架快速開發微信公眾平臺功能[J].大眾科技,2015(10):134137,155.

[2]JASON HUNTER,WILLIAM CRAWFORD.Java Servlet programming[M].USA:OReilly,2001:4377.

[3]李文兵,朱可.帶給PHP和Java世界的雙贏[J].程序員,2009(9):106107.

[4]鄧紅梅.基于Java技術的PHP編譯器的設計與開發方式芻議[J].網絡安全技術與應用,2014(4):33,36.

[5]肖文鵬.珠聯璧合PHP與JAVA的結合[J].中文信息,2002(10):7475,78.

[6]勞建成,蔣遷謙.基于PHP和Java的消息中間件的實現原理研究[J].無線互聯科技,2017(2):102103.

[7]李嵐.基于BASE64編碼的電子支付系統安全性分析[J].微計算機信息,2006(73):178179,221.

[8]JDK安裝與環境變量配置.[EB/OL].http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html.

[9]Sun Microsystems.Comparing methods for server side dynamic content white paper[M].USA:Sun Microsystems Press,2000:5157.

責任編輯(責任編輯:黃健)

猜你喜歡
程序方法系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
主站蜘蛛池模板: 波多野结衣中文字幕久久| 国产在线精品网址你懂的| 亚洲色婷婷一区二区| 欧美成a人片在线观看| 97免费在线观看视频| a级毛片在线免费观看| 亚洲国产成人自拍| 日本午夜视频在线观看| 香蕉视频国产精品人| 丰满人妻中出白浆| 88国产经典欧美一区二区三区| 无码AV动漫| 毛片视频网址| 国产成人在线无码免费视频| 欧洲亚洲欧美国产日本高清| 午夜福利视频一区| 999精品视频在线| 福利视频久久| 久久熟女AV| 欧美亚洲网| 国产理论一区| 国产又粗又猛又爽| 9啪在线视频| 午夜天堂视频| 国产精品jizz在线观看软件| 福利视频一区| 日韩精品成人网页视频在线| 久久一色本道亚洲| 亚洲无码视频一区二区三区| 一级一级一片免费| 91极品美女高潮叫床在线观看| 欧美午夜网| julia中文字幕久久亚洲| 亚洲国产精品不卡在线| 国产尤物在线播放| 白丝美女办公室高潮喷水视频| 久久99国产乱子伦精品免| 色有码无码视频| 99久久精品国产麻豆婷婷| 高清码无在线看| 喷潮白浆直流在线播放| 久久久无码人妻精品无码| 国产在线观看第二页| 第一页亚洲| 久视频免费精品6| 99热国产这里只有精品9九| 3D动漫精品啪啪一区二区下载| 欧美日韩免费观看| 日本久久网站| 国产99欧美精品久久精品久久| 激情网址在线观看| 国产欧美网站| 久久久久人妻精品一区三寸蜜桃| 99视频在线免费看| 亚洲欧美在线综合一区二区三区| 久久综合九色综合97婷婷| 一级香蕉视频在线观看| 亚洲美女视频一区| 亚洲无线观看| 亚洲第一区欧美国产综合| 国产视频欧美| 久久青草免费91线频观看不卡| 在线日本国产成人免费的| 亚洲无码高清一区二区| 成人在线亚洲| 久久国产热| 54pao国产成人免费视频| 操操操综合网| 国产在线精品网址你懂的| 免费国产黄线在线观看| 91九色国产porny| 欧美成人国产| 亚洲天堂首页| 青青草原国产| 99久久精品免费看国产免费软件| 久久毛片网| 亚洲欧美一区二区三区蜜芽| 日韩在线欧美在线| 色屁屁一区二区三区视频国产| 91九色国产在线| 日韩在线欧美在线| 国产福利微拍精品一区二区|