springmvcʵÏÖlong-pulling¼¼Êõ(¶þ)

2014-11-23 19:04:02 ¡¤ ×÷Õß: ¡¤ ä¯ÀÀ: 40
m msg ÏûÏ¢ */ private void processMessage(Message msg){ Set keys = chatRequests.keySet(); for(String key : keys){ chatRequests.get(key).setResult(msg); } } }

3 ½¨Á¢ÏûϢʵÌå

/**
 * @×÷Õß yyp
 * @ÎļþÃû Message.java
 * @×÷Óà ·â×°Óû§µÄÁÄÌìÄÚÈÝ
 * @Blog http://blog.csdn.net/gisredevelopment
 */
public class Message {
	private String user;
	private String date;
	private String content;
}

4 Ò³Ãæ´úÂë-µÇ¼

<html>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

  
怬



  
name:

5 Ò³Ãæ´úÂë-ÁÄÌì



<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<% String user =(String)session.getAttribute("user"); %>

  
ÁÄÌìÊÒ
<script type="text/java script" src="/imgr src=http%3A%2F%2Fwww.ineeke.com%2Farchives%2F1486%2Fjquery-1.10.1.min.js">
<script type="text/java script">
	$(function(){
		(function getMessages(){
			$.ajax({
				dataType: "json",
				url: 'getMessages',
				cache: false,
				success: function(data){
					var v = $('#text').val();
					v += '\r\n' + data.date + ' ' + data.user + '£º' + data.content;
					$('#text').val(v);
				}
			}).always(function(){
				getMessages();
			});
		})();
		$('#form').submit(function(event){
			event.preventDefault();
			var values = $(this).serialize();
			$.post('setMessage', values, function(data){
				$('#form>[name=content]').val('');
			}, 'json');
		});
		$('#logout').click(function(){
			$.ajax({
				dataType: "json",
				url: 'logout',
				cache: false,
				success: function(data){
					window.location.href = 'index.jsp';
				}
			});
		});
	});



»¶Ó­£º<%=user %>