2009-03-15 4 views
1

개체에 데이터를 쓰는 Java에서 Windows 서비스를 만들고 있습니다. 이 오브젝트는 다른 Java 프로그램에서 액세스 할 수 있어야합니다. 취할 수있는 가장 좋은 방법은 무엇입니까?Java 서비스 및 리소스 공유

감사합니다. 잭

답변

0

개체를 파일에 serialize하고 다른 프로세스에서 읽고 쓸 수 있습니다! JAXB 또는 XStream과 같은 프레임 워크를 사용하여 XML에도 직렬화 할 수 있습니다.

또 다른 방법은 JMS이지만 마스터하기가 어렵습니다.

+0

@Martin, 감사합니다. 나는 당신의 제안을 전에 생각해 봤지만 더 나은 접근법이 있는지 알고 싶습니다. 초당 몇 번 업데이트되는 매우 긴 필드 - 값 쌍 목록이 있습니다. 그래서, 최고의 솔루션을 serialising입니까? –

+0

그런데 누군가 Windows에서 Java 서비스를 만드는 가장 적절한 방법에 대한 자습서를 가르쳐 주시겠습니까? –

+0

파일을 사용할 때의 문제점은 파일을 읽지 않고 파일이 업데이트되지 않고 작성자가 파일을 업데이트하려고 시도하지 않는다는 것을 독자가 알 수있게하는 것입니다. –

1

두 자바 프로세스가 서로를 "볼"수있는 방법을 자세히 설명하지 않으면 "파일에 넣기"접근 방식에 동의합니다. 동시에 운영되고 있습니까? 같은 기계 에서요? 기타 어떤 데이터를 전송해야합니까? 모든 응용 프로그램과 서비스가 데이터를 기록 할 수있는 경우


, 당신은 어떤 데이터가 올바른 (응용 프로그램 A 또는 서비스의 하나)입니다 결정하는 문제가있다.

"공통 데이터 저장소"문제에 대한 간단한 접근 방식은 JBoss와 같은 대부분의 Java EE 서버에 포함 된 JNDI 서버 일 수 있습니다. 각 서버는 동일한 JNDI 서버에서 읽도록 요청됩니다. 클라이언트가 JNDI에서 정보를 업데이트 할 수 있는지 확신 할 수 없지만 벤더에 따라 다를 수 있습니다.

+0

@Thorbjorn, 예, 서비스 및 다른 (별도의) 응용 프로그램은 모두 동일한 컴퓨터에서 고속으로 공유 데이터를 읽고 쓰고 있습니다. 데이터는 기본적으로 필드 - 값 쌍의 목록입니다. –

0

일반 오래된 RMI은 필요한 것을 위해 사용 된 것입니다. WS과 같은 새로운 대안이 선호되지만, 첫 번째로 충분할 수도 있습니다.

관련 문제