평안은행을 개발하면서 로컬에서 PHP 환경을 사용하고, 평안은행 인터페이스가 Java 인터페이스일 때 PHP-Java-Bridge 메소드를 사용하여 인터페이스를 호출할 때 제가 기록한 메모입니다. 기본적으로 인터넷에 있는 튜토리얼은 더 이상 제공되지 않으므로 제가 사용할 수 있는 최신 버전(2014-09-19)을 여기에 게시하겠습니다. 오류가 있는 경우 이메일로 연락해 주시기 바랍니다.
/**================================================= ==========
* @author ken(695093513@qq.com)
* @date 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-bit/64- bit | Linux (Centos6.5)
/**================================================= ==========
* 설치 및 사용
*
========================== =====================================**/
1단계: 설치
1. JDK 설치: 정상적으로 설치하고 환경변수를 설정합니다
2. : 일반 설치
3. php-java-bridge 설치:
① 먼저 Java 서버 Tomcat을 다운로드하고 정상적으로 설치합니다. 설치 후 Tomcat 서버를 엽니다.
② 다운로드한 php-java- bridge package into Under webapps
③ Tomcat이 구문 분석을 실행할 때까지 기다리면
디렉토리 아래에 동일한 이름의 폴더가 생성됩니다. ④
사용을 위해 해당 폴더를 Apache 서버에 복사합니다(참고: 온라인 튜토리얼은 정상적으로 사용할 수 있으며, Java 시스템 함수와 간단한 jar 패키지를 호출하면 되지만, 복잡한 jar 패키지를 사용하면 다양한 문제가 발생하므로 이 방법을 사용하는 것이 좋습니다)
Step 2: 사용
1이 있습니다. Tomcat을 열 필요가 없습니다(끄는 것이 가장 좋습니다). Apache 서버를 열고 javabridge.jar을 두 번 클릭하여 실행한 다음 포트 8080을 선택합니다(javabridge.jar도 Java 가상 머신 아래에 배치해야 합니다. 아래의 두 번째 규칙).
2. jar 패키지를 가능한 한 Java 가상 머신 아래, 즉 jre 설치 아래에 배치합니다(예: C:Program FilesJavajre1.8.0_20libext)
3. jar 패키지를 PHP 파일에 넣습니다. 가상 머신 아래에 배치하면 java가 자동으로
을 호출하기 때문입니다(참고: 1번 항목의 javabridge.jar은 첫 번째 단계: 설치의 3단계에서 가져옵니다)
/* *================================================= ==========
* 기타 사용방법 및 주의사항
*
======================== ========================================* */
PHP-Java-Bridge의 다양한 기능 사용에 대해:
1. java_require의 상위 버전은 Java 가상 머신 아래에 있으므로 더 이상 사용되지 않습니다. , 패키지 파일을 수동으로 도입할 필요가 없습니다.
2. java_value()를 사용하여 값을 가져오고 이 함수를 사용하여 값을 가져와야 합니다.
그렇지 않으면 오류가 보고되거나 값이 저장될 수 없습니다.
3. java_inspect()는 인스턴스화 또는 메소드에서 print_r과 유사한 출력을 수행합니다
(참고: Java 클래스, 메소드, 변수를 출력하려면 var_dump와 같은 출력 메소드를 직접 사용하지 마십시오. 예를 들어 var_dump(java_inspect($abc)))
4. test = new Java("Test"). 인스턴스화 메서드에 매개변수가 있는 경우 new Java("Test", "pram")을 사용할 수 있습니다.
참고:
1. 그리고 참조가 올바른지 확인하세요
2. Java 가상 머신 jre와 같이 참조할 수 있는 곳에 jar 패키지를 배치하세요
3. PHP의 작성 방법을 사용하여 PHP에서 Java를 호출하세요
/**================================================= ==========
* 부록 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 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.