javaWeb简易聊天室(SpringMVC+jQuery+ajax)

准备工作:所有在线用户保存在application作用域中,注销或关闭浏览器应进行更新

  关闭浏览器的执行注销方法:

    <script>

      window.onunload=onunload_handler;

      function onunload_handler(){

        window.location="/logout";

      }

    </script>

  (发现只对ie和edge有效,跪了)

 

页面使用ajax实现异步定时刷新

<script type="text/javascript">
    onload=getAjaxContent;    //---------------------定时每500毫秒执行一次更新请求
setInterval(getAjaxContent,500);

function getAjaxContent() {   //----------------------获取ajax请求的jQuery方法
$.getJSON({
url:'/friends',      //-----------------------链接对应方法加上@ResponseBody注解,自动将返回对象转换成json格式

success:function (data) {  
      //根据data更新页面

$("#friendsList").empty();
for(var d in data){
var $li=$('<li><a href="#" onclick="setReceiver(this);">'+data[d]+'</a></li>')
$li.appendTo($("#friendsList"));
}
}});
}
function sendChat() {      //----------------------点击发送时调用的方法,发送聊天信息(SpringMVC通过@RequestBody注释得到data内容)
$.ajax({
    url:'/sendChat',

type:'post',
dataType:'json',
contentType : "application/json;charset=UTF-8",
data:JSON.stringify(    //-----------------------接受data的形参加上注解@RequestBody(注意json的属性名和对象的对应属性名相同),@RequestBody只能识别字符串,不能识别json。所以使用JSON.stringify()
      {"dialog":$('#dialog').val(),
      "receiver":$('#receiver').val(),
      "sender":$("#sender").val()}
    )

});
}
</script>
posted @ 2017-07-18 11:40  小猫小橙  阅读(1538)  评论(0)    收藏  举报