`
zhtjava
  • 浏览: 2862 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论
阅读更多

客户端:

var xmlHttp;
function createXMLHttpRequest() {

    if (window.ActiveXObject) {
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        if (window.XMLHttpRequest) {
            xmlHttp = new XMLHttpRequest();
        }
    }
}
function getMessage() {
    //alert("getmessage");
    createXMLHttpRequest();
    var d=new Date();
    var time=d.getFullYear()+"-"+d.getUTCMonth()+"-"+d.getUTCDate()+" "+d.getHours()+":"+d.getMinutes()+":"+d.getSeconds();
    //var strurl = "loadmsg";    //这个是在WEB.XML文件中配置的servlet。也可以写在Action中。EG:/loginAction.do
        var strurl = "loadmsg?time="+time;
        xmlHttp.open("GET", strurl, true);
    xmlHttp.onreadystatechange = callback;
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=GBK");
        xmlHttp.setRequestHeader("contentType","text/html;charset=GBK");
        //xmlHttp.setRequestHeader("RequestType","ajax");
        //var data = "time="+time+"&mapname="+MapName;
        //data=encodeURI(data);
        //data=encodeURI(data);
        //xmlHttp.send(data);

    xmlHttp.send(null);

    theTimer = setTimeout("getMessage()", 7000);
}

function callback() {
    //alert("readyState"+xmlHttp.readyState);
    //alert("status"+xmlHttp.status);
    if (xmlHttp.readyState == 4) {//end
        if (xmlHttp.status == 200) {//http OK
            //alert("callback!");
            //clearRow();
            var style,errip,err,time;

//返回responseXML是XML文件,如果是responseText是字符串
            var nodes=xmlHttp.responseXML.getElementsByTagName("errmsg");
            var xlen=xmlHttp.responseXML.getElementsByTagName("errmsg").length;

             style=nodes[0].getElementsByTagName("style")[0].firstChild.data;

 

}

服务器端:

    public void doGet(HttpServletRequest request,
                      HttpServletResponse response) throws IOException,
            ServletException {
        request.setCharacterEncoding("GBK");

        StringBuffer responseXml = new StringBuffer(
                "<?xml version='1.0' encoding='gb2312' standalone='no'?>");
        responseXml.append("<response>");
        //String mapname= new String(request.getParameter("mapname").getBytes("UTF-8"),"GBK");
        String mapname= request.getParameter("mapname");
        String tmpstr = java.net.URLEncoder.encode("",
                "UTF-8");
        System.out.println("tmpstr:" + tmpstr);
        System.out.println("tmpstr:" +
                           java.net.URLDecoder.decode(tmpstr, "UTF-8"));

        String time = (String) request.getParameter("time");
        Calendar cal = Calendar.getInstance();

        SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        String mDateTime = formatter.format(cal.getTime());


        ServersAndLinksXML salx = new ServersAndLinksXML();
        List list = salx.getMapsList();
        List link, server;
        MapVo ompvo;
        //test
        System.out.println("list:" + list.size());
        for (int i = 0; i < list.size(); i++) {
            ompvo = (MapVo) list.get(i);

            System.out.println("mapname1+++++++7" + mapname +
                               request.getCharacterEncoding());
            System.out.println("getMap_name" + ompvo.getMap_name().toString()); //乱码问题
            if (ompvo.getMap_name().equals(mapname)) {
                //LINK信息添加到XML文件
                link = ompvo.getLinksList();
                Link olink = new Link();
                System.out.println("link:" + link.size());
                for (int l = 0; l < link.size(); l++) {
                    olink = (Link) link.get(l);
                    System.out.println(link.get(l).toString());
                    responseXml.append("<errmsg>");
                    responseXml.append("<style>LINK</style>");
                    responseXml.append("<errip>" + olink.getLinkMapID() +
                                       "</errip>");
                    responseXml.append("<err>数据库中未检索到该IP的错误信息</err>");
                    responseXml.append("<time>" + time + "</time>");
                    responseXml.append("</errmsg>");
                }
                link.clear();
                //SERVER信息添加到XML文件
                server = ompvo.getServersList();
                System.out.println("server:" + server.size());
                Server oserver = new Server();
                for (int m = 0; m < server.size(); m++) {
                    oserver = (Server) server.get(m);
                    System.out.println(oserver.getServerIP());
                    responseXml.append("<errmsg>");
                    responseXml.append("<style>SERVER</style>");
                    responseXml.append("<errip>" + oserver.getServerIP() +
                                       "</errip>");
                    responseXml.append("<err>数据库中未检索到该IP的错误信息</err>");
                    responseXml.append("<time>" + time + "</time>");
                    responseXml.append("</errmsg>");
                }
                server.clear();
            }
        }

        responseXml.append("</response>");
        response.setContentType("text/xml;charset=gb2312");
        response.getWriter().print(responseXml);
        list.clear();
    }

分享到:
评论

相关推荐

    ajax面试题ajax面试题

    关于Ajax的常见面试题 1,Ajax和javascript的区别? javascript是一种在浏览器端执行的脚本语言,Ajax是一种创建交互式网页应用的开发技术 ,它是利用了一系列相关的技术其中就包括javascript。 Javascript是由...

    Ajax从入门到精通.pdf

    Ajax从入门到精通.pdf 本书籍旨在深入浅出地介绍 Ajax 技术,从基础知识到高级应用,全面覆盖 Ajax 的核心概念、技术原理、实现方法和实践应用。书籍的主要内容包括: 1. Ajax 概述:本书首先介绍了 Ajax 的概念、...

    Java Ajax分页,jsp ajax分页

    Java AJAX(Asynchronous JavaScript and XML)分页与JSP(JavaServer Pages)相结合,可以提供无需刷新整个页面即可动态加载更多内容的能力,提高用户体验。本教程将深入探讨如何使用AJAX、JavaScript以及MySQL...

    深入浅出Ajax(Head Rush Ajax) 源码 书中代码

    **Ajax 概述** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个网页的情况下,能够更新部分网页的技术。它的核心是利用JavaScript与服务器进行异步数据交换,通过XML或者JSON格式传输数据,使得用户...

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX Extensions与ASP.NET AJAX Control Toolkit 源代码

    本卷从最易于理解和使用的那部分入手,介绍ASP.NET AJAX框架中能够与传统ASP.NET无缝对接的服务器端部分,包括服务器端ASP.NET AJAX Extensions与ASP.NET AJAX Control Toolkit。这部分内容不需要读者有任何的客户端...

    jquery+ajax例子

    在IT行业中,jQuery和Ajax是两个非常重要的技术,它们在构建动态、交互性强的Web应用程序时发挥着关键作用。jQuery是一个高效、简洁的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互。Ajax...

    AJAX原理 原理 AJAX

    "AJAX原理与技术的深入分析" AJAX(Asynchronous JavaScript and XML)是一种异步通信技术,允许Web应用程序异步地从服务器请求数据,而不需要重新加载整个网页。下面我们将深入分析AJAX的原理、技术、意义和发展...

    AjaxRequest(Ajax使用包)

    **AjaxRequest(Ajax使用包)** Ajax,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。AjaxRequest是实现Ajax功能的一个工具包,它...

    实例详解Android Webview拦截ajax请求

    Android Webview虽然提供了页面加载及资源请求的钩子,但是对于h5的ajax请求并没有提供干涉的接口,这意味着我们不能在webview中干涉javascript发起的http请求,而有时候我们确实需要能够截获ajax请求并实现一些功能...

    谷歌浏览器插件—— Ajax Interceptor

    **Ajax Interceptor:深入理解与应用** Ajax Interceptor 是一款专为谷歌浏览器(Chrome)设计的插件,它允许开发者在Ajax请求发送后和响应返回前进行干预,从而实现对AJAX请求数据的修改。这款插件对于前端开发、...

    Professional Ajax, 2nd Edition.pdf

    《Professional Ajax, 2nd Edition》是一本深入探讨Ajax技术的专业书籍,由三位作者Nicholas C. Zakas、Jeremy McPeak和Joe Fawcett共同撰写。本书在2007年由Wiley Publishing, Inc.出版,是针对网站开发、设计以及...

    ajax+json实例

    **Ajax+JSON 实例详解** 在现代Web开发中,AJAX(Asynchronous JavaScript and XML)技术已经成为提升用户体验的重要工具,它允许网页在不刷新整个页面的情况下与服务器进行数据交互。结合JSON(JavaScript Object ...

    ajax代码 ajax代码

    **Ajax(Asynchronous JavaScript and XML)技术是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新。这种技术可以提升用户体验,因为它...

    php+ajax例子

    标题中的“php+ajax例子”指的是使用PHP服务器端语言与AJAX(Asynchronous JavaScript and XML)客户端技术结合的示例应用。在Web开发中,PHP通常用于处理服务器端逻辑,而AJAX则允许网页在不刷新整个页面的情况下,...

    Ajax基础教程(亚马逊计算机榜首图书,国内第1本Ajax图书) [第一部分 共两部分]

    本书重点介绍Ajax及相关的工具和技术,主要内容包括XMLHttpRequest对象及其属性和方法、发送请求和处理响应、构建完备的Ajax开发工具、使用JsUnit测试JavaScript、分析JavaScript调试工具和技术,以及Ajax开发模式和...

    ajax文档ajax文档

    AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML)。  国 [使用ajax 构建应用程序] 使用ajax 构建应用程序 内翻译常为“阿贾克斯”和阿贾克斯足球队同音。Web应用的交互如Flickr,Backpack和...

    完美解决ajax访问遇到Session失效的问题

    现在Ajax在Web项目中应用广泛,几乎可以说无处不在,这就带来另外一个问题:当Ajax请求遇到Session超时,应该怎么办? 显而易见,传统的页面跳转在此已经不适用,因为Ajax请求是XMLHTTPRequest对象发起的而不

    完全手册:ASP.net.Ajax电子教程

    **ASP.NET AJAX 全面解析** ASP.NET AJAX(Asynchronous JavaScript and XML)是微软为.NET Framework提供的一种技术,用于创建富交互式、响应快速的Web应用程序。它将JavaScript库(MicrosoftAjax.js)与服务器端...

    Struts2与Ajax 精简源码

    Struts2与Ajax 的实现原理,于Servlet+Ajax原理是一致的,都是通过后台的response.getWriter().print("");把数据传输给前台的。 前台Ajax格式如下(需要导入ajax库,比如:jquery-1.11.3.js) 格式: $(function()...

Global site tag (gtag.js) - Google Analytics