導航:首頁 > 編程語言 > php和java的結合

php和java的結合

發布時間:2023-04-23 14:56:19

⑴ 請教一下javaphp協同開發的方法

引用
因為在做垂直搜索工作中,使用的是java編寫的一個搜索類庫。做垂直搜索,很多實用要使用到配置。當搜索的信息量大時,網站的更新。搜索程序的配置維護是一個不可忽視的問題。所以用了php做網頁,提供配置界面,這樣就可以不用直接修改配置文件或是配置資料庫表。當把配置信息配置好了,我們需要檢測配置是否正確,因為使用的是java程序,所以檢測配置的正確與否使用的也是java程序來檢測。這里就存在一個問題,就是需要把php頁面上的信息傳入到java程序中去檢測。這個時候就需要php和java通信了。下面我就來介紹下怎麼使php跟java通信(當然,你也可以使用類似webservice等技術)也就是php中調用java程序。 php要調用java程序:需要以下准備,php程序,java程序,還有就是shell程序或是bat程序。下面分別介紹下在linux伺服器下php調用java程序和在windows伺服器下調用java程序。前提是php,apache,jdk的環境都已經配置好。
一 在linux下php調用java程序是通過shell文件。分別是以下三個文件: test_shell.php test_shell.java test_shell.sh 他們的源代碼如下:

1.test_shell.java程序代碼

public class test_shell {

public static void main(String[] args) {

System.out.println("你輸入的參數是:"+args[0]+"t"+args[1]);

}

}

2.test_shell.php程序代碼

<?php

/*

* 該函數是用來執行shell命令的,其實還可以使用:exec(),system(),
* popen()和pclose(),passthru() 函數。最長用的是前面兩個和例中使
* 用的shell_exec()。

*/

$args1="我喜歡你";

$args2="我很愛你";

// 注意空格

$r=shell_exec("./test_shell.sh $args1 $args2");

echo $r;

?>

3.test_shell.sh程序代碼是

#!/bin/sh

JAVA_HOME=/usr/local/jdk

CLASSPATH=.:/usr/local/jdk/jre/lib/rt.jar:/usr/local/apache/htdocs/test_shell/test_shell.class

PATH=$PATH:$JAVA_HOME/bin

export JAVA_HOME CLASSPATH PATH

cd /usr/local/apache/htdocs/test_shell

java test_shell

#shell代碼結束

以下是三個程序的存放路徑和運行次序。
1.三個文件都必須在同一目錄下,比如在/usr/local/apache/htdocs/test_shell/下,不然php很難調到java程序。

2.把test_shell.java程序編譯成test_shell.class,然後把test_shell.class文件存放到CLASSPATH中。如果系統配置了那些環境變數,這里在配置一次是沒有壞處的,也不會影響配置好的系統環境變數。這里設置的好處是當沒有配置jdk環境配置,只有jre時,則需把jre放到/usr/local/jdk下就以。

二、下面先介紹在windows伺服器下,php調用java程序是通過bat文件來的。分別是以下三個文件: test_bat.php test_bat.java test_bat.sh 他們的源代碼如下:

1.java程序

public class test_bat {

public static void main(String[] args) {

System.out.println("你輸入的參數是:"+args[0]+"t"+args[1]);

}

}

2.test_bat.php程序代碼

<?php

/*

* 該函數是用來執行shell命令的,其實還可以使用:exec(),system(),
* popen()和pclose(),passthru() 函數。最長用的是前面兩個和例中使
* 用的shell_exec()。

*/

$args1="我喜歡你";

$args2="我很愛你";

// 注意空格

$r=shell_exec("./test_shell.sh $args1 $args2");

echo $r;

?>

3.test_bat.sh程序代碼是

@echo off
set path=%path%;%cd%jrebin
set CLASSPATH=.;%cd%jrelibrt.jar;%cd%test_bat.class
java test_bat %1 %2

#bat代碼結束

1.三個文件都必須放在同一目錄下,比如在/usr/local/apache/htdocs/test_bat/下,不然php很難調到java程序。

2.把test_bat.java程序編譯成test_bat.class,然後把test_bat.class文件存放到CLASSPATH中。如果系統配置了那些環境變數,這里在配置是沒有壞處的,也不會影響配置好的系統環境變數。這里設置的好處是當沒有配置jdk環境配置,只有jre時,則需把jre放到跟跟test_bat.java同一目錄下就行了。

三、上面兩個例子中,test_shell.sh用的絕對路徑,test_bat.bat是用的相對路徑。不管是絕對還是相對,只要路徑對了就行了。

⑵ PHP+JAVA

這種跨語言的,我所了解中只有webservice,php做客戶端,當客戶端發送請求的時候,php把數據整理好,通過http調用java的後台方法,java拿到參數後進行處理,將處理的結果返回給php輸出,php和java之間只能傳字元串或者字元串數組。 網上很多小例子的。

⑶ php程序與java程序之間做數據交互,怎麼做

  1. 用php的curl模擬瀏覽器請求是訪問java伺服器程序

  2. 2.用java的一個http類庫同樣發送http請求來訪問PHP伺服器

    $context=stream_context_create(array('http'=>array('method'=>"GET",'timeout'=>30,)));

    $string=file_get_contents('http://www..com/s?wd=php%20file_put_contents',false,$context);//換成java地址

    echo'這可不是網路,只是我輸出了網路的返回';

    echo$string;

⑷ PHP與JAVA交互,該怎麼搞

前後台交互常用的就是HTTP方式,GET和POST。
JAVA後台跑在java容器裡面,接受前台的請求就可以了。

建議你 用一下Chrome的插件POST MAN 你就懂了。
這個可以讓你對HTTP請求有一個比較深入的理解。

不光是java後台,.net後台,php後台都一樣。
使用的都是HTTP協議,數據傳輸的格式都是一樣的。

⑸ PHP與已存在的Java應用程序集成

PHP功能的另外一個優勢是其調用已有Java對象方法首模脊的能力 通碼鋒過此項功能可將PHP集成進已有的基於Java的應用程序 如果你正在工作場合推廣PHP 這項功能尤其顯得時髦 Java無處不在 為實現此功能 你需要在伺服器上安裝Java虛擬機(JVM) 如果你將安裝(或已安裝)來自Sun Kaffe IBM或Blackdown的JDK 則可以迅速開始工作 當配置PHP時 需要對配置指令增加 with java參數 然後修改php ini文件中部分元素 php ini 中通常要修改以下各行 [Java]java library path=/path/to/libraryjava class path=/classpath/extension_dir=/path/to/extensionsextension=libphp_java so需要提醒以上修者滲改都取決於你的安裝類型 你應該閱讀你的PHP安裝目錄下ext/java目錄中的README文件以了解有關Java功能配置的更多信息 這里有一個簡單例子 通過PHP腳本創建新的Java對象 然後該腳本將訪問某些Java屬性並將其輸出 這同的實例一樣令人激動 但此例還使你知道了更多的可能的方法 <?$system = new Java( java lang System );echo <P>Java version = $system >getProperty( java version ) <br> ;echo Java vendor = $system >getProperty( java vendor ) </p> ;?>如果你已經具備了Java知識 那你應當盡全力在此項目上幫助開發者 此類集成能力必然成為將來PHP發展和為人所接受的關鍵 因此 做這些工作的人越多 PHP未來的發展就會更加美好 lishixin/Article/program/PHP/201311/20782

⑹ 網站可以混合PHP和JAVA進行開發么

可以,淘寶,手機之家, Digg 等都是採用PHP和Java混合的方式進行協同開發。
Php程序員:用直觀,快速,簡單的方式解決問題,注重於結果。
Java程序員:注重積累和重用,注重於過程,有時過度設計。
如果能把PHP和Java結合起來將是一件很美好的事情,Java用於後台的資料庫查詢、存儲。而PHP作為最前端的頁面展示,用戶體驗上應該是很不錯的。

⑺ 大型網站中,php和java是怎麼結合的

我是做JAVAEE的,但還沒有和PHP的共存的項目的經驗,但.NET是有的。
.NET負責報表部分,JAVA是業務處理,實際上,兩部分除了訪問同一個庫外,沒什麼交集。

我想PHP應該不同,應該是和JAVA分擔前後端的。
PHP負責展示及控制,JAVA負責業務和固化。
PHP因其執行容器原因,沒辦法駐留內存,高並發性能上就是個問題。
JAVA可以彌補這點。
前端上PHP可以彌補JAVA開發效率低的短板。
純個人理解。

⑻ PHP可以和JAVA混合在一起開發網站么

php目前是web2.0時代做火的一門編程語言。在一線城市大量招聘php人才。成功案例,去谷歌或者網路一下,看一下結果就知道php現在是多麼流行了。php要運行,需要伺服器來支持運行。可以喝Java結合,php一個支持Java擴展的模塊。當然了,也可以不同的模塊使用不同的語言來編寫,而不限於Java一種。

⑼ 【程序】Java和PHP這兩種技術能否結合使用

PHP和JAVA不能結合,可以和javascrip腳本結合。做一些特殊效果。

⑽ PHP與JAVA交互,該怎麼搞

這是一門課程了。javaweb,,或者叫jsp。jsp就是由html和java腳本,等語言構成的。java程序嵌套在html里。相當於php。以網頁的形式將java展現。這也就是所謂的動態。以為java程序獲取的時間會變動。或者資料庫變動從而引起網頁的變動。具體實現,你可以在網上查找jsp教程。以下是一個jsp頁面的例子:注釋(1):上面一句是jsp命令語句,標准形式表示,利用java腳本語言。引入java.util包里的所有文件。編碼為utf-8注釋2:java腳本之後是標準的html格式。可嵌入java代碼">MyJSP'index.jsp'startingpageThisismyJSPpage.可嵌入java腳本

閱讀全文

與php和java的結合相關的資料

熱點內容
760貼片機編程視頻 瀏覽:333
歐姆龍plc編程第36講 瀏覽:915
我的世界如何將一個伺服器弄崩 瀏覽:8
php網站訪問量代碼 瀏覽:431
怠速壓縮機咔咔響 瀏覽:176
怎麼才能修改APP中的數據 瀏覽:688
哪裡有搶單的app 瀏覽:462
演算法概率題 瀏覽:465
長方形拉伸的命令 瀏覽:279
python代碼函數編程技術 瀏覽:194
java正則式 瀏覽:429
外包程序員好進嗎 瀏覽:384
雲伺服器服務模型架構 瀏覽:901
刪文件夾什麼指令 瀏覽:509
極速抖音已加密怎麼辦 瀏覽:603
matlab拉格朗日演算法框圖 瀏覽:430
華為公司計算機視覺演算法顧問 瀏覽:254
夏老師講的單片機 瀏覽:298
在編程中如何將圖片放大 瀏覽:163
appstore怎麼看是否付費 瀏覽:603