一直以来都是使用SpringMVC,最近不是很忙所以学习了一下Struts2.以前在项目中很多时候都是使用JQuery请求的Json。
当然在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();List<User> list=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:
<package name="jsonUser" extends="json-default"><!-- 获取所有User的JSON --><action name="jsonuser" class="com.mzsx.user.action.UserAction" method="jsonUser"><result type="json"><param name="root">result</param></result></action></package>
最值得注意的是extends=
"json-default",<resulttype=
"json"
>和<paramname=
"root"
>result</param>。
为了简便,我在前端页面的js为:
$(function(){alert("开始");$.getJSON('http://localhost:8080/hibernate/jsonuser.action',function(data){alert(data);});});
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦