struts2的struts.xml配置文件,给我们的感觉好像是根据业务类返回的结果,导航不同的页面。然而我们的ajax请求返回的东西需要json字符串时,则此配置就不能满足我们的要求了。
要想action为我们返回json字符串,需执行下面几个步骤:
首先:必须到struts2的lib目录中,复制struts2-json-plugin-2.2.1.jar(以struts2.2.1为例)到工程的WEB-INF/lib目录中。
其次:将struts.xml文件中的package的extends写成:
<package name="default" namespace="/" extends="json-default">
再次:修改action的result如下例:
<action name="findall" class="findAllAction" method="execute">
<result type="json"/>
</action>
此处, 的type="jason"表示,向浏览器输出的不是网页了,而是将HTTP响应(Response) 的MIME类型设为“application/json”输出文本。
最后:大功造成,只需要在action类中如findAllAction类,添加需要返回的json数据的getter方法, 便可向页面或ajax输出json文件数据了。
分享到:
相关推荐
在前端,我们需要创建一个JSON数组并使用XMLHttpRequest对象或者更现代的fetch API来发送AJAX请求。以下是一个使用jQuery库的例子: ```javascript var data = [ { "name": "item1", "value": "1" }, { "name": ...
在Struts2中,创建一个名为`Struts2Action.java`的Action类,处理Ajax请求并返回JSON。需要添加Struts2的JSON插件支持,然后定义一个方法,如`execute()`,返回`json`结果类型: ```java @Action(value = ...
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端交互,尤其是在AJAX请求中。Struts2提供了一套方便的机制来支持JSON数据的处理。 ### 第一种方式:使用`response.getWriter().print...
在这个项目中,Struts2负责处理AJAX请求,查询数据库并返回JSON格式的省市区数据。 3. **JSON(JavaScript Object Notation)**:JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在...
Struts2 返回 JSON 对象 ...通过这些步骤,我们可以使用 Struts2 返回 JSON 对象,以便在 Ajax 应用程序中使用。在这个实例中,我们使用了 Struts2 的 JSON 插件来序列化对象,并将其返回给客户端。
在后端,我们需要创建一个Struts2 Action类,用于处理Ajax请求并返回JSON数据。例如,创建一个名为`AjaxAction.java`的类: ```java import com.opensymphony.xwork2.ActionSupport; import org.apache.struts2....
下面将详细讲解这些技术及其在"JQuery发起ajax请求Struts2,并操作JSON数据的例子"中的应用。 **jQuery** 是一个轻量级的JavaScript库,简化了DOM操作、事件处理、动画以及Ajax交互。在这个例子中,jQuery用于发起...
在Struts2中,返回JSON(JavaScript Object Notation)数据类型是一种常见的需求,尤其是在开发AJAX或者前后端分离的应用时。JSON是一种轻量级的数据交换格式,它允许服务器向客户端发送结构化的数据,而无需解析...
当Action执行完毕后,可以返回一个JSON结果类型,Struts2会自动将Action的属性转换为JSON格式并返回给前端。 接着,我们讨论AJAX。AJAX是一种在不重新加载整个网页的情况下,能够更新部分网页的技术。在本资源中,...
现在,当客户端通过Ajax请求这些Action时,Struts2会自动将对应的Action属性转换成JSON格式并返回。例如,调用`/json/returnMsg.action`将返回一个包含`message`属性的JSON对象,调用`/json/returnUser.action`将...
当用户发起AJAX请求,Struts2会调用这个Action,然后返回JSON化的`users`对象。 要实现返回结果列表,你可以在`UserAction`中添加一个列表属性,例如`List<Users>`,并填充数据。然后在返回的JSON中,这个列表会被...
2. 发起Ajax请求:使用jQuery的`$.ajax`方法,设置URL为目标Action的路径,data参数为JSON数据,dataType为'json',contentType为'application/json',表示发送和接收的数据格式都是JSON。 **后端(服务器端)实现*...
3. **使用AJAX**:在前端,使用JavaScript和jQuery库发送AJAX请求到服务器,获取JSON数据。例如: ```javascript $.ajax({ url: 'StrutsAjax/ajaxAction', type: 'POST', dataType: 'json', success: function...
结合这三个组件,开发者可以构建出响应式、动态的Web应用,后端使用Struts 2处理业务逻辑,通过JSON Plugin返回JSON数据,前端利用jQuery通过AJAX请求获取这些数据,然后动态更新页面,提高用户体验。这种前后端分离...
Struts2的Action类接收Ajax请求,处理请求参数,然后调用相应的服务方法。 **Ajax** (Asynchronous JavaScript and XML) 是一种在不刷新整个页面的情况下与服务器交换数据并更新部分网页的技术。在本案例中,当用户...
例如,在前端使用jQuery等库发起AJAX请求,获取或发送JSON格式的数据,而在后端,Struts2框架则能够无缝处理这些JSON数据,从而构建出响应迅速、用户体验优秀的Web应用。 综上所述,Struts2与JSON的整合不仅提升了...
在客户端,如JavaScript,可以通过AJAX请求获取这个JSON数据,并进行解析和处理。例如,使用jQuery的`$.ajax`方法: ```javascript $.ajax({ url: 'myAction', type: 'POST', dataType: 'json', success: ...
Struts2支持JSON的处理,使得开发人员能够轻松地将Java对象转换为JSON格式,然后发送到客户端,或者将JSON数据解析成Java对象。下面我们将深入探讨Struts2集成JSON的相关知识点。 1. **Struts2 JSON插件**: ...
通过这种方式,当你在前端使用AJAX请求这些Action时,服务器将返回JSON格式的数据,前端JavaScript可以方便地解析和操作这些数据,实现动态更新页面的效果。 总的来说,Struts2的JSON插件简化了服务器端与客户端...
在实际开发中,为了测试Struts2返回JSON格式的数据,可以创建一个简单的Action,设置返回值,并在前端使用AJAX请求来接收这个JSON数据。例如,使用jQuery的$.ajax()方法进行请求,然后通过JSON.parse()解析返回的...