欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

Java中使用json与前台Ajax数据交互的方法

程序员文章站 2022-03-20 08:44:50
...
本文主要为大家分享了Ajax获取显示Json数据的一种方法,供大家参考,具体内容如下
1、首先前台用Ajax,其中注意dataType一定要选择json方式,Action成功返回给页面的Json内容是这样的[{"number":"V006","names":"LiLei"}],可见comment['names']对应"names":"LiLei",comment['number']对应"number":"V006"。
$.ajax({
  type: "post",
   url:'apply/mystudent.action?',
  cache: false,
  dataType : "json",
  success: function(data){
    
   $.each(data, function(commentIndex, comment){
          
            alert("姓名"+ comment['names']);
         
            alert("学号"+comment['number']);
 
         });
                 }
                });


2、Ajax的URL指向在java的action中mystudent方法,返回的list其实是一个对象Student,包括了names和nunmber字段

public String mystudent() throws Exception{
 List list=priceService.query();//调用接口实现类
  
 this.jsonUtil(list);
  
 return null;
 }


3、action页面专门写一个方法jsonUtil来做为json方法

// 调用json工具方法,传入参数alist
public void jsonUtil(Object accountlist) throws Exception {
HttpServletResponse response = ServletActionContext.getResponse();
log.info("JSON格式:" + accountlist.toString());
 
String returnJson = JsonConvert.returnJson(accountlist);
response.setCharacterEncoding("utf-8");
response.getWriter().println(returnJson);
}


4、我用的是一种比较新的json包jackson

import java.io.StringWriter;
 
import org.codehaus.jackson.map.ObjectMapper;
 
public class JsonConvert {
 static String jsonStr;
 public static String returnJson(Object object) throws Exception{
 ObjectMapper objectMapper = new ObjectMapper();
 StringWriter stringWriter = new StringWriter();
 objectMapper.writeValue(stringWriter, object);
  
 jsonStr = stringWriter.toString();
 return jsonStr;
 }
}


以上就是本文的全部内容,希望对大家的学习有所帮助。

更多Java中使用json与前台Ajax数据交互的方法相关文章请关注PHP中文网!