第一步我們需要准備的是java環境,
https://www.oracle.com/java/technologies/javase-jdk8-downloads.html
接下來就是需要准備我們需要調用的java類了,
把你准備好的類放在這個文件夾下面,沒有就新建一個文件夾
接下來我們就要去准備php需要的東西了
http://php-java-bridge.sourceforge.net/pjb/download.php
一個文件是JavaBridge.jar 一個是Java.inc
這兩個文件下載下來
這是php的代碼:
1 define("JAVA_DEBUG", true); //調試設置 2 define("JAVA_HOSTS", "127.0.0.1:8080"); //設置javabridge監聽端口,如果開啟javabridge.jar設置的端口不是8080,可通過此語句更改 3 require_once("../extend/java/Java.inc"); //php調用java的接口,路徑問題需要注意 4 $here=realpath(dirname($_SERVER["SCRIPT_FILENAME"])); 5 6 $ta = new \Java("Main");//實例化的類 7 $lsit=java_values($ta->getsocketStr($arr));//getsocketStr 類名 8 $led=test($lsit); 9 return $led;
需要注意的是路勁一定要正確
啟動方法 到JavaBridge.jar 目錄下輸入下面命令 java -jar JavaBridge.jar SERVLET_LOCAL:8081 &
由於經常會崩潰的原因我這linux centons下寫了一個粗糙的監控腳本 我這里用的是寶塔的計划任務,原理一樣
1 # 用ps獲取$PRO_NAME進程數量 2 NUM=`ps aux | grep java | grep -v grep |wc -l` 3 # echo $NUM 4 # 少於1,重啟進程 5 if [ "${NUM}" -lt "1" ];then 6 java -jar /www/wwwroot/xx/JavaBridge.jar SERVLET_LOCAL:8080& 7 fi
如果不滿足條件就重啟當前的JavaBridge.jar 進程
在文章最后需要感謝 https://www.jianshu.com/p/a4cdfdde800b