>Java >java지도 시간 >Node에서 Java를 호출하는 경우

Node에서 Java를 호출하는 경우

黄舟
黄舟원래의
2017-09-21 09:36:281942검색

이 글은 주로 Java를 호출하는 Node의 샘플 코드를 소개합니다. 편집자는 이것이 꽤 좋다고 생각합니다. 이제 여러분과 공유하고 참고용으로 제공하겠습니다. 편집기를 따라가서 살펴보겠습니다. Java 측은 서비스 제공자 역할을 하고 Dubbo 기반 서비스를 구현하며 Dubbo Hessian 확장을 통해 서비스를 노출합니다. Node-hessian을 통해 Java 측 서비스를 호출하는 서비스 소비자 역할을 합니다.

Java 측

서비스 인터페이스

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 구성은 생략됩니다. ㅋㅋㅋ

노드 쪽

요약

Dubbo는 매우 훌륭하며 Hessian 기본 프로토콜을 지원합니다. Node도 호출하기가 매우 간단하지만 몇 가지 주의할 점이 있습니다.

인터페이스 메서드는 오버로드될 수 없습니다(인터페이스의 메서드 다른 메소드 이름을 사용해야 함)


사용자 정의 유형의 네임스페이스는 서버 측과 소비자 측에서 일치해야 합니다(com.yuanxin.paas.ssb.Arg)

서버 측 사용자 정의 유형 직렬화 인터페이스(java.io.Serialized)를 구현해야 합니다

간단한 사용자 정의 유형 구조를 사용해 보세요(중첩 방지)

위 내용은 Node에서 Java를 호출하는 경우의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.