>  기사  >  Java  >  서비스 및 클라이언트의 Java 구현에 대한 자세한 설명(Corba 개발)

서비스 및 클라이언트의 Java 구현에 대한 자세한 설명(Corba 개발)

黄舟
黄舟원래의
2017-10-19 09:38:122403검색

이 글은 주로 Corba에서 개발한 서비스와 클라이언트의 Java 구현에 대한 관련 정보를 소개합니다. 도움이 필요한 친구들은 이 글을 참고하시기 바랍니다.

Corba에서 개발한 서비스와 클라이언트의 Java 구현에 대한 자세한 설명입니다. Corba

1 개요

CORBA(Common Object Request Broker Architecture, Common Object Request Broker Architecture)는 OMG 조직에서 개발한 표준 객체 지향 응용 프로그램 시스템 사양입니다. 즉, CORBA 아키텍처는 분산 처리 환경(DCE)에서 하드웨어와 소프트웨어 시스템의 상호 연결을 해결하기 위해 OMG가 제안한 솔루션입니다.

OMG: 개체 관리 그룹, 개체 관리 조직입니다. 회원으로 구성된 국제 비영리 컴퓨터 산업 표준 협회입니다. 협회는 1989년에 설립되었습니다. 협회의 임무는 응용 프로그램 개발을 위한 공개 프레임워크를 제공하고 산업 지침 및 개체 관리 사양을 공식화하며 개체 개발을 가속화하는 것입니다. 기술. . . 모든 조직은 OMG에 가입하여 표준 개발 프로세스에 참여할 수 있습니다. OMG는 UML(Unified Modeling Language) 및 MDA(ModelDriven Architecture)와 같은 모델링 표준을 개발했습니다. 강력한 시각적 디자인, 실행 및 유지 관리 소프트웨어와 같은 프로세스를 지원합니다. 또한 OMG는 잘 알려진 미들웨어 표준인 CommonObject Request Broker Architecture(CORBA?)도 개발했습니다.

Common Object Request Broker Architecture CORBA(Common Object Request Broker Architecture)는 오늘날의 수많은 하드웨어와 소프트웨어 간의 상호 운용성을 달성하기 위해 OMG에서 정의한 솔루션이기도 하며 객체 지향 표준화 및 상호 운용성을 향한 중요한 단계입니다.

간단히 말하면, CORBA를 사용하면 애플리케이션이 어디에 존재하는지, 누가 설계했는지, 즉 크로스 플랫폼과 크로스 언어에 상관없이 서로 통신할 수 있습니다. CORBA1.1은 1991년 OMG에 의해 출시되었으며, ORB(Object Request Broker)에서 클라이언트 객체와 서버 객체 간의 상호 작용을 구현하는 IDL(인터페이스 정의 언어)과 API(애플리케이션 프로그래밍 인터페이스)를 정의했습니다. CORBA2.0은 1994년에 출시되었으며 다양한 공급업체 간의 ORB에 대한 통신 규칙을 지정했습니다.

CORBA 표준은 주로 IDL(인터페이스 정의 언어), ORB(객체 요청 브로커) 및 ORB 간 상호 운용성 프로토콜 IIOP의 세 부분으로 나뉩니다.

IDL은 CORBA에 의해 정의된 언어입니다. CORBA는 또한 다양한 언어에 대한 IDL 매핑을 정의합니다. ​​ 표준 매핑에는 Ada, C, C++, Smalltalk, Java 및 Python이 포함됩니다. 이러한 매핑을 통해 IDL을 다양한 언어로 번역하여 언어 간 구현이 가능합니다. IDL 언어는 인터페이스 정의 언어입니다. IDL 언어는 기존의 모든 프로그래밍 언어와 다릅니다. 즉, IDL이 설명하는 인터페이스를 직접 컴파일하고 실행할 수 없습니다. OMG IDL 언어는 ISOLatin-1(8859.1) 문자 세트를 사용합니다. 문자 집합은 문자, 숫자, 그래픽 기호, 공백 문자, 형식 기호로 나눌 수 있습니다. 문자에는 영어 대문자와 소문자 26개가 포함되고, 숫자에는 0부터 9까지 10개의 아라비아 숫자가 포함됩니다.

ORB는 CORBA의 핵심이며 객체 간 클라이언트/서버 관계를 설정하는 미들웨어입니다. ORB를 사용하면 고객은 로컬이거나 네트워크를 통해 연결된 다른 시스템에 있는 서비스 개체에 대한 메서드를 투명하게 호출할 수 있습니다. ORB는 이 호출을 가로채서 서비스를 구현하는 객체를 찾아 여기에 매개변수를 전달하고 최종 결과를 반환하는 메소드를 호출하는 일을 담당합니다. 클라이언트는 서비스 객체가 어디에 있는지, 프로그래밍 언어와 운영 체제가 무엇인지, 객체 인터페이스의 일부가 아닌 시스템의 다른 부분을 알지 못합니다. 이러한 방식으로 ORB는 이기종 분산 환경의 다양한 시스템에 있는 애플리케이션에 대한 상호 운용성을 제공하고 여러 객체 시스템을 원활하게 통합합니다.

클라이언트가 서버 측 코드를 호출하면 클라이언트는 ORB를 볼 수 없지만 클라이언트는 자신의 객체의 메소드를 호출하는 것처럼 느껴지지만 네트워크 전송 프로세스는 ORB에 캡슐화됩니다.

2 사진:


modulehelloapp {
  interfaceHello {
    string sayHello();
    oneway void shutdown();
  };
};
2. IDL 파일을 선택하고 ORBMenu--->Compile을 마우스 오른쪽 버튼으로 클릭하면 해당 작업 파일이 자동으로 생성됩니다


총 필요한 작업 파일이 자동으로 생성됩니다. 7;

3 서버측 개발

1. New--->Other--->CORBAWizard--. ->서버--->활성 개체 맵-- ->아래 표시된 대로 다음:

2. 팝업 대화 상자의 IDL 파일 이름 열에서 /{projectName}/src/{IDLname}.idl을 선택합니다.

인터페이스 열의 IDL 파일에 정의된 인터페이스 이름을 선택합니다

패키지를 채웁니다. 패키지 열에 이름

서버 클래스 이름 열에 서버 클래스 이름을 입력하세요

--->다음 팝업 대화 상자에서 Createserver 클래스를 선택합니다: item


3. 생성된 서버 클래스에 구현되지 않은 메서드를 추가하고 메서드 본문을 채웁니다


이제 서버 구성이 완료되었으며 Server_AOM 클래스가 서버 시작 입구입니다.

4 IDL, 아래와 같이:

3. 이전 idl 파일을 선택하면

는 아래와 같이 완료 후 자동으로 클라이언트 파일 작업을 생성합니다. 클라이언트 클래스의 기본 메소드에서 test.getORBInterface().Operation1("Amessage in the Bottle..."); 주석을 제거하고 이전에 사용자 정의된 메소드를 호출하여 전달된 문자열 컨텐츠를 수정하십시오. 클라이언트 호출이 완료되었습니다.

참고: 서버 프로그램 Server_AOM.java를 실행한 후 클라이언트 프로그램 MyServiceClientImpl.java

을 실행하면 간단한 서비스 및 클라이언트 개발이 완료됩니다!

위 내용은 서비스 및 클라이언트의 Java 구현에 대한 자세한 설명(Corba 개발)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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