前言
JavaBridge,看名字就能理解这是一个JAVA桥接。
本人使用的易语言也能通过JAVA虚拟机直接调用JAR文件中的方法
好处是效率高,耗资源少。
但是有一个缺点,就是使用软件的必须要安装java环境。不方便客户使用。
所以搜索资料找到一个PHP中的组建。JavaBridge
可以通过PHP调用JAR中的方法。通过网站返回方法结果。
好处是通用,缺点是延时高。效率一般。
下载地址
PHP-JavaBridge下载地址:http://sourceforge.net/projects/php-java-bridge/files
使用步骤
安装JAVA环境
变量设置参数如下:
变量名:JAVA_HOME
变量值:C:\Program Files (x86)\Java\jdk1.8.0_91 // 要根据自己的实际路径配置
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; //记得前面有个”.”
变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
解压PHP所需文件
打开JavaBridge.jar,用解压软件打开。把目录META-INF/java目录的文件解压至网站目录
如本人的解压至www/java目录
复制JAR文件至指定目录
把需要调用的jar文件拷贝至Jre SDK安装目录\jre\lib\ext下
如我的安装在:C:\Program Files\Java\jdk1.8.0_201\jre\lib\ext
运行JavaBridge.jar
使用Java(TM) Platform SE binary运行JavaBridge.jar
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);