2011-08-27 6 views
1

현재 방명록 페이지를 작성 중입니다. 사용자가 특정 항목에 대해 의견을 말하도록 허용합니다. 사용자 A가 의견을 게시한다고 가정 해 보겠습니다. 새 게시물이 userB 브라우저의 페이지에 자동으로 표시되도록하려면 어떻게해야합니까? userA 브라우저에 게시물을 표시 할 수 있지만 userB 브라우저가 자동으로 새 게시물을 표시하도록 할 수 있습니까?JSP 데이터 디스플레이 자동 업데이트

답변

2

역 AJAX (a.k.a. Comet)를 찾고 있습니다.

는 업데이트 : 당신이 기초를 배울 후

, 나는 실제 구현을 제공하는 당신에게 Atmosphere를 추천 할 것입니다. 또한 컨테이너를 선택할 수 있다면 Jetty 또는 GlassFish으로 갈 것입니다.

+0

아무런 생각이 없습니다. – user236501

+1

Google 모조 : http://java.dzone.com/articles/using-atmospheres-jquery-plug. 혜성은 stackoverflow 게시물에서 배울 수있는 것이 아닙니다. 관련 기술을 배우고 배우는 데 시간을 투자하십시오.보다 구체적인 질문이 있으시면 언제든지 물어보십시오. –

2

인스턴트 메신저를 코딩하는 경우, 사용자 B의 페이지에서 포스트와 그 모양 사이에 아주 작은 지연이 있어야하는 곳에서 Anthony가 제안한대로 Comet을 살펴보십시오.

그렇지 않은 경우 가장 간단한 방법은 AJAX 요청을 사용하여 새 메시지에 대해 서버를 폴링하여 사용자 B의 페이지를 정기적으로 (2, 3, 5, 10 분마다 : 허용되는 것으로 결정) 자동으로 폴링하는 것입니다. 이 작업을 통해 전체 대역폭을 소모하지 않도록하십시오.

+0

예. AJAX 요청 또는 심지어 [메타 새로 고침]과 같은 더 오래된 학교 (http://en.wikipedia.org/wiki/Meta_refresh). 그러나 다시, @ JB 조언을 취하십시오. 이것은 잠재적으로 많은 대역폭을 소비 할 수 있습니다. –

+0

경매 사이트는 어떻습니까? 어떻게 데이터를 반영 하는가? – user236501

+0

대역폭 (사용자 및 사용자), 동시 사용자 수 및 수용 가능한 지연에 따라 다릅니다. 확답은 없습니다. 귀하의 상황에 가장 적합한 것을보십시오. –

0

응용 프로그램에 Comet을 사용할 수 있습니다. 오히려 혜성을 사용하는 것보다, 그냥 JQuery와 타이머를 유지하고 새로운 업데이트 서버를 폴링

0

Developing with Comet and Java의 예에서

봐.

다음은 설문 조사 방식입니다.

0. Assume each message posted has a unique incremental rownumber. 
1. pass your client page's last displayed row number. 
2. check if there are any rows greater than the rownumber you passed. 
3. if more,return all those rows to the client. 
4. do all the above things using ajax,preferably in jquery.