温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

struts2+jquery+json集成

发布时间:2020-07-04 22:51:02 来源:网络 阅读:511 作者:梦朝思夕 栏目:web开发

一直以来都是使用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);
});
});

运行结果:

struts2+jquery+json集成

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI