풋내기는 EJB를 배운다(一)-첫 번째 실례
3682 단어 ejb
먼저 인터페이스를 살펴보겠습니다.
package com.tjb.ejb;
public interface MyEjb {
String helloEjb ();
}
다음은 인터페이스에 대한 구체적인 실현이다.
package com.tjb.ejb;
import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;
@Stateless
@Remote
@WebService
public class MyEjbBean implements MyEjb {
public String helloEjb() {
return "Hello EJB";
}
}
그리고 클라이언트를 만들어서 인터페이스를 통해 우리의 실현을 호출합니다.
package com.tgb.ejb;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import com.tjb.ejb.MyEjb;
public class MyEjbClient {
public static void main(String[] args) throws NamingException {
InitialContext ctx = new InitialContext();
MyEjb ejb = (MyEjb) ctx.lookup("MyEjbBean/remote");
String hello = ejb.helloEjb();
System.out.println(hello);
}
}
클라이언트가 상하문 대상을 실례화한 다음lookup 방법을 통해 원격 구현을 찾고 마지막으로 구체적인 방법을 호출합니다.클라이언트가 성공적으로 호출하려면 인터페이스를 클라이언트의 프로젝트에 인용해야 합니다.
클라이언트는 jndi라는 이름을 만들어야 합니다.properties 프로필:
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=192.168.24.27:1099
java.naming.provider.url은 인터페이스와 구현된 기계의 주소와 포트를 가리킨다.
클라이언트와 위의 SessionBean은 완전히 독립된 두 프로젝트이지만 상호작용을 할 수 있고 클라이언트는 SessionBean을 호출하여 자신이 원하는 작업을 완성할 수 있다. 이것이 바로 EJB의 분포식 특성이다.프로그램을 다른 서버에 배치할 수 있습니다.오늘은 여기까지 하고 분포식이 어떤 장점이 있는지 나중에 다시 이야기하자.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ejb+Resteasy를 호출하는rest 서비스 오류: Could not find MessageBodyWriterCould not find MessageBodyWriter for response object of type: java.util.ArrayList 해결 방법:war 패키지는rest 서비스를 제공하는 jb LOCAL ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.