struts2+jquery+json集成

本文介绍如何在Struts2框架中集成jQuery与JSON技术实现数据交互。通过具体示例展示了如何配置Struts2来返回JSON数据,并使用jQuery进行前端处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直以来都是使用SpringMVC,最近不是很忙所以学习了一下Struts2.以前在项目中很多时候都是使用JQuery请求的Json。

当然在SpringMVC中获取Json也是有多种方式的,比如:

1
2
3
4
5
6
7
8
9
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:

1
2
3
4
5
6
7
8
9
10
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的一个属性变量:

1
2
3
4
5
6
7
8
// 返回结果给客户端
private  String result;
public  String getResult() {
return  result;
}
public  void  setResult(String result) {
this .result = result;
}

struts.xml:

1
2
3
4
5
6
7
8
< 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为:

1
2
3
4
5
6
$( function (){
alert( "开始" );
$.getJSON( 'http://localhost:8080/hibernate/jsonuser.action' , function (data){
alert(data);
});
});

运行结果:

110248689.png

本文转自 梦朝思夕 51CTO博客,原文链接:http://blog.51cto.com/qiangmzsx/1305058

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值