1、servlet中处理
//转回为可以用eval方法运行的字符串格式
String html = "[";
for(int i = 0;i<list.size();i++) {
if(i>0)
html += ",";
html += "{id:'"+list.get(i).getId()
+"',name:'"+list.get(i).getName()
+"',author:'"+list.get(i).getAuthor()
+"',price:'"+list.get(i).getPrice()+"'}";
}
html += "]";
resp.getWriter().write(html);
2、JavaScript中处理:
eval()方法中的字符串加对括号,以免出错
<script src="js/jquery-3.2.1.js"></script>
<script>
$(function(){
$("input").click(function(){
$.post("list",function(date){
//把后台传来的字符串转回为对象数组(json)
alert(date);
var da = eval("("+date+")");
var htm="<tr><td>编号</td><td>书名</td><td>作者</td><td>价格</td></tr>";
for(var i = 0; i<da.length; i++){
htm+="<tr><td>"+da[i].id+"</td><td>"+da[i].name+"</td><td>"+da[i].author+"</td><td>"+da[i].price+"</td></tr>"
}
$("#mylist").html(htm);
});
});
});
</script>
3、用gson插件
A)导入gson.jar
B)JavaScript中$.post(“glist”,fuciont(date)(),’json’)
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//处理乱码
resp.setCharacterEncoding("utf-8");
//假装从数据库获得数据
List<Book> list = new ArrayList<Book>();
list.add(new Book(1,"java","sun",12.1));
list.add(new Book(2,"java编译原理","sun",13.2));
list.add(new Book(3,"易语言","不知道",14.2));
Gson gson = new Gson();
resp.getWriter().print(gson.toJson(list));
}