Node 에서 자바 의 예제 코드 를 호출 합 니 다.
자바 엔 드
서비스 인터페이스
package com.yuanxin.paas.ssb;
public interface TestService {
/**
* : , 。
*/
void test();
/**
* : 。
*
* @param i
* @return
*/
String test0(int i);
/**
* : , 。
*
* @return
*/
Result test1();
/**
* : , 。
*
* @param arg
*/
void test2(Arg arg);
/**
* : , 。
*
* @param arg
* @return
*/
Result test3(final Arg arg);
}
사용자 정의 매개 변수 클래스
package com.yuanxin.paas.ssb;
import java.io.Serializable;
public class Arg implements Serializable {
private int i;
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
}
사용자 정의 반환 값 클래스
package com.yuanxin.paas.ssb;
import java.io.Serializable;
public class Result implements Serializable {
private int i;
private String string;
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
public String getString() {
return string;
}
public void setString(String string) {
this.string = string;
}
}
Dubbo 구성 전략.노드 엔 드
node-hessian
설치node-hessian:
npm install hessian-proxy
호출 서비스 인터페이스
var Proxy = require('hessian-proxy').Proxy;
var proxy = new Proxy('http://127.0.0.1:9098/test-provider/provider/com.yuanxin.paas.ssb.TestService', '', '', proxy);
proxy.invoke('test', null, function (err, reply) {
console.log('test: ' + reply);
});
proxy.invoke('test0', [25], function (err, reply) {
console.log('test0: ' + JSON.stringify(reply));
})
proxy.invoke('test1', null, function (err, reply) {
if (err) {
console.log('test1: ' + err);
}
console.log('test1: ' + JSON.stringify(reply));
})
var argForTest2 = {
i: 2
};
argForTest2.__type__ = 'com.yuanxin.paas.ssb.Arg';
proxy.invoke('test2', [argForTest2], function (err, reply) {
if (err) {
console.log('test2: ' + err);
}
console.log('test2: ' + JSON.stringify(reply));
})
var argForTest3 = {
i: 3
};
argForTest3.__type__ = 'com.yuanxin.paas.ssb.Arg';
proxy.invoke('test3', [argForTest3], function (err, reply) {
if (err) {
console.log('test3: ' + err);
}
console.log('test3: ' + JSON.stringify(reply));
})
실행 결과자바 엔 드
노드 엔 드
총결산
Dubbo 는 Hessian 원생 협의 에 대한 지 지 를 제공 합 니 다.Node 호출 도 매우 간단 하지만 몇 가지 주의해 야 할 점 이 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
NestJs Guard하지만 가드는 ExcutionContext를 사용할 수 있기 때문에 다음에 어떠한 라우트 핸들러가 실행되는지 정확하게 알 수 있다. ExecutionContext는 ArgumentsHost를 상속 받았기 때문에 각 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.