`

ajax返回json数据

 
阅读更多

新建一个SecondTest.html页面,定义一个按钮,并给这个按钮绑定事件ajaxJson()。在JS中实现AJAX,这里的AJAX相对于上一篇中的,我做了简单的封装,将原有的代码分成三个方法,分别是create()、callback()、run()。

  create方法是用来创建XMLHttp对象的,callback是用来实现回调函数的,run方法是核心方法。具体代码如下:

  create():

View Code
function create(){
                if(window.XMLHttpRequest){
                    xmlHttp=new XMLHttpRequest();
                }else if(window.ActiveXObject){
                    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")
                }
            }

  callback():

View Code
function callback(){
                if(xmlHttp.readyState==4){
                    if(xmlHttp.status==200){
                        //要实现的操作
                    }else{
                        alert("AJAX服务器返回错误!");
                    }    
                }
            }

  run():

View Code
function run(url){
                create();
                xmlHttp.open("POST",url,true);
                xmlHttp.onreadystatechange=callback;
                xmlHttp.send();
            }

  以上三个方法写好后,在ajaxJson()方法中直接调用run方法并将请求当参数传入进去。代码如下:

View Code
function ajaxJson(){
                run("test.do?method=jsonTest&&msg="+new Date());
            }

  在AjaxController类的中新建jsonTest方法,在JAVA中实现Json是需要Json架包的,Json的架包有:json-lib-2.3-jdk15.jar,ezmorph-1[1].0.6.jar,commons-logging-tests.jar,commons-logging-api-1.1.1.jar,commons-logging-adapters-1.1.1.jar,commons-logging-1.1.1-sources.jar,commons-logging-1.1.1-javadoc.jar,commons-logging-1.1.1.jar,commons-lang.jar,commons-collections-3[1].2.1.jar,commons-beanutils-core.jar,commons-beanutils-bean-collections.jar,commons-beanutils.jar。看着有点多哈,可以自己去CSDN上面找,我试着删掉一些,但发现少了会不好使,所以为了保险还是把这些都加进去吧。

  在开发过程中一般数据都是从数据库中取出来的,习惯性的我们会在程序中将取出的数据存到List中,而Json架包中正好有封装好的方法能将List转换为Json。在这个例子中我们自己制造一些假数据放到List中,然后再将List转换为Json,再返回给前台。代码如下:

View Code
public ActionForward jsonTest(ActionMapping mapping, ActionForm form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
        //制造假数据
        ArrayList<UserModel> list=new ArrayList<UserModel>();
        UserModel user1=new UserModel();//用户对象1
        user1.setUserId(1);
        user1.setUserName("哈哈");
        user1.setUserSex("男");
        list.add(user1);
        
        UserModel user2=new UserModel();//用户对象2
        user2.setUserId(2);
        user2.setUserName("呵呵");
        user2.setUserSex("女");
        list.add(user2);
        //将List转化为JSON
        JSONArray json=JSONArray.fromObject(list);
        //设置编码
        response.setCharacterEncoding("gbk");
        //写入到前台
        response.getWriter().write(json.toString());
        return null;
    }

  后台部分写完了,现在前台SecondTest.html页面需要接收后台反馈来的数据,这个时候就需要在回调函数中接收Json数据。JS代码如下:

View Code
//回调函数
        function callback(){
            if(xmlHttp.readyState==4){
                if(xmlHttp.status==200){
                    var xmlDoc=xmlHttp.responseText;
                    var data=eval(xmlDoc);
                    alert(data[0].userId+","+data[0].userName+","+data[0].userSex);
                    alert(data[1].userId+","+data[1].userName+","+data[1].userSex);
                }else{
                        alert("AJAX服务器返回错误!");
                }    
            }
        }

  以上就完成了Ajax返回Json在Java中的实现。

分享到:
评论

相关推荐

    PHP与AJAX返回json数据调用.zip

    PHP与AJAX返回json数据调用.zip

    struts使用ajax返回json数据所需jar包

    很多人在实现struts使用ajax返回json数据的时候,明明代码没有错误但是没有得到结果,其实有可能是jar包冲突或者少了,这里我分享ssh的所有jar包,可以直接部署使用,如果部署有问题的可以看下我的说明文档,本来想...

    处理ajax返回带有换行的json数据

    1. **服务端处理**:理想情况下,服务端应该在返回JSON数据前进行适当的编码,确保所有的换行符都已转义为`\n`。这可以通过编程语言中的JSON库或函数来实现,比如在Node.js中使用`JSON.stringify()`方法,或者在PHP...

    ajax 解析json数据

    当服务器返回JSON数据时,我们需要将其转换为JavaScript对象进行处理。以下是使用`XMLHttpRequest`解析JSON的步骤: 1. 创建`XMLHttpRequest`实例。 ```javascript var xhr = new XMLHttpRequest(); ``` 2. 设置...

    Ajax中使用JSON传输数据

    当与服务器进行交互时,可以使用`send()`方法发送JSON数据。例如,将上面的JSON对象作为POST请求的数据发送: ```javascript var xhr = new XMLHttpRequest(); xhr.open('POST', 'http://example.com/api/user'); ...

    jQuery中ajax请求后台返回json数据并渲染HTML的方法

    PHP是常用于处理请求并返回JSON数据的后端语言之一。在文章中的PHP实例部分,使用了ThinkPHP框架中的M方法来查询数据库,返回的是一个包含菜品信息的数组,然后使用json_encode()函数将数组编码为JSON字符串。 3. ...

    ajax操作json数据

    在AJAX的回调函数中,我们可以通过`responseText`或`response`属性获取到服务器返回的JSON数据字符串。然后,使用`JSON.parse()`方法将这个字符串转换为JavaScript对象,以便在客户端进行操作。 以jQuery为例,一个...

    ajax+json实例

    在这个例子中,服务器端通过`JsonResult`返回JSON格式的用户信息,客户端通过AJAX请求获取这些信息并解析显示。 **五、总结** AJAX+JSON在.NET环境中的应用大大提高了Web应用程序的交互性和效率,减少了不必要的...

    ajax返回json对象.zip

    总结来说,"Ajax返回JSON对象"涉及到的技术点包括Ajax的基本使用、JSON数据格式、Ajax发送和接收JSON数据的流程、jQuery对Ajax的支持、跨域请求以及安全性和错误处理。这些都是Web开发中不可或缺的知识点,理解和...

    SSH1,JQuery的ajax返回json二维数组处理过程

    在示例中,返回的JSON数据是一个二维数组,形如`[{key,val},{key,val},{key,val}]`。这种格式表示一个数组,其中每个元素本身又是一个键值对的对象。在JavaScript中,可以方便地遍历和操作这些数据。 在JQuery中,...

    调用ajax返回json的另一种用法

    本篇将重点介绍一种调用AJAX返回JSON数据的另类用法,通过这种方式可以更高效地处理和展示服务器返回的数据。 首先,理解JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写,同时也...

    php-curl+ajax+json数据传输2.0版本

    本文将深入探讨这三者结合在“php-curl+ajax+json数据传输2.0版本”中的应用。 首先,`PHP-cURL` 是一个在PHP中使用的库,它允许开发者通过URL来传输数据,支持多种协议,如HTTP、HTTPS、FTP等。`cURL` 提供了一种...

    Ajax请求django返回json数据到前端

    Ajax请求接口,Django框架下从该接口接收Ajax发送的json数据,同时将新的json数据返回给Ajax,Ajax收到后在js进行处理,然后和页面内容交互。整个数据前后端交互全部采用json格式。代码高度封装,只需要更改json内容...

    $.ajax json数据传递方法.docx

    $.ajax json 数据传递方法是使用 jQuery 库实现的异步数据传递方法,通过将 JSON 数据封装在 $.ajax 对象中,并将其作为参数传递给服务器端脚本,以实现客户端和服务器端之间的数据交互。 在前台代码中,首先定义了...

    【ASP.NET编程知识】ASP.NET使用Ajax返回Json对象的方法.docx

    通过创建一个 HTML 页面和一个 JS 文件,演示了如何使用 Ajax 提交表单数据并返回 Json 对象。 知识点一:使用 Ajax 提交表单数据 在 ASP.NET 中,可以使用 Ajax 提交表单数据,而不需要使用传统的 Form 提交方式...

    struts2返回JSON数据的两种方式

    在本文中,我们将探讨两种在Struts2框架中返回JSON数据的方法。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端交互,尤其是在AJAX请求中。Struts2提供了一套方便的机制来支持JSON...

    Struts2 与Jquery Ajax的json数据交换的典型范例

    总结,Struts2和jQuery的Ajax JSON数据交换涉及以下几个关键步骤:配置Struts2的JSON插件,编写返回JSON数据的Action,使用jQuery发起Ajax请求并处理返回的JSON数据。通过这种方式,可以实现客户端与服务器之间的...

    AJAX 想Struts2后台传送Json数据并向前台返回Json格式的数据

    4. 返回JSON数据:在Action的execute方法中,创建一个Map或自定义的Java对象,然后将其转化为JSON对象,最后通过ActionContext返回JSON结果。 **示例代码**: ```javascript // 前端Ajax请求 $.ajax({ url: '...

    ajax请求复杂的json数据实例

    总结来说,本实例的核心是利用AJAX技术从服务器获取复杂的JSON数据,并对其进行解析和处理。理解AJAX的工作原理、JSON的结构以及如何在JavaScript中操作JSON是Web开发者必备的技能。在实际应用中,你可能还需要处理...

    使用Ajax向PHP服务端发送请求并返回JSON数据

    总结起来,使用Ajax向PHP服务端发送请求并接收JSON数据涉及的主要步骤包括创建XMLHttpRequest对象、设置回调函数、打开连接、设置请求头、发送请求以及在服务端处理请求和返回JSON数据。理解这些步骤对于Web开发中的...

Global site tag (gtag.js) - Google Analytics