一直以来都是使用SpringMVC,最近不是很忙所以学习了一下Struts2.以前在项目中很多时候都是使用JQuery请求的Json。
创新互联专注于企业全网营销推广、网站重做改版、杭锦网站定制设计、自适应品牌网站建设、H5场景定制、商城网站建设、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为杭锦等各大城市提供网站开发制作服务。
当然在SpringMVC中获取Json也是有多种方式的,比如:
JSONArray json = JSONArray.fromObject(childNode.toArray()); String s = json.toString(); response.setContentType("text/json; charset=UTF-8"); response.setCharacterEncoding("UTF-8"); try { response.getWriter().write(s); } catch (IOException e) { e.printStackTrace(); }
我大多数情况下都是使用Gson的,上述示例使用了json-lib-2.3-jdk15.jar。
下面我将使用struts2+jquery+json集成获取JSON,需要lib中包含struts2-json-plugin-2.3.7.jar和json-lib-2.3-jdk15.jar。
UserAction:
public String jsonUser() throws Exception{ UserService uService=new UserService(); Listlist=uService.findByAll(); Gson gson=new Gson(); result=gson.toJson(list); for (User user : list) { System.out.println(gson.toJson(list)+"====================="+user.getId()+"--"+user.getName()); } return SUCCESS; }
其中result是UserAction的一个属性变量:
// 返回结果给客户端 private String result; public String getResult() { return result; } public void setResult(String result) { this.result = result; }
struts.xml:
result
最值得注意的是extends=
"json-default",
>和
>result。
为了简便,我在前端页面的js为:
$(function(){ alert("开始"); $.getJSON('http://localhost:8080/hibernate/jsonuser.action',function(data){ alert(data); }); });
运行结果: