在用struts2框架时在Action中返回json数据
来源:互联网 发布:韦斯利马修斯生涯数据 编辑:程序博客网 时间:2024/06/11 07:27
在上一篇搭建了struts2开发环境,之前开发一些小项目都是直接使用的servlet,在servlet中返回json数据很容易:在response对象中打开流直接写入json数据就好了。今天学习struts2时也想在action中返回json数据,但是action中并不能直接像servlet那样返回json数据。在这里记录下今天的收获吧!
在action中返回json数据有两种方法:
1.在action中得到response对象,然后就和在servlet中返回json数据是相同的。
2.struts2对json的扩展,下面主要介绍这种方法.
导入需要的jar包
要使用struts2对json的扩展,我们需要导入struts2-json-plugin-2.1.8.1.jar和xwork-core-2.1.6.jar.使用这两个版本的包完美运行,其他版本可能会有差异导致失败!!!
编写action
struts2把json看成时map对象(键值对,json本身也就是这样....),所以我们在写action时只要有一个map对象就可以了,struts2会对把这个map对象自动的返回给请求页面(需要特定的配置).例如:
public class TestAction extends ActionSupport{/** * */private static final long serialVersionUID = 1L;private Map<String,Object> jsonData;public String getJsonList(){jsonData = new HashMap<String,Object>();jsonData.put("one", "one's apple");return Action.SUCCESS;}public Map<String,Object> getJsonData() {return jsonData;}public void setJsonData(Map<String,Object> jsonData) {this.jsonData = jsonData;}}
配置struts.xml
返回json数据的action必须extends json-default包,而且result type属性必须为json
<package name="textJson" namespace="/textJson" extends="json-default"><action name="getJsonList" class="cui.schat.action.TestAction" method="getJsonList"><result type="json"><param name="root">jsonData</param> <!-- 这里的jsonData对应action里要返回的map对象 --></result></action></package>
1 0
- 在用struts2框架时在Action中返回json数据
- struts2中Action中返回Json数据
- 在Action中以Struts2的方式输出JSON数据
- 在Action中以Struts2的方式输出JSON数据
- 在Action中以Struts2的方式输出JSON数据
- 在Action中以Struts2的方式输出JSON数据
- 在Action中以Struts2的方式输出JSON数据
- Struts2中Action返回Json
- 处理Struts2的action中对返回的json在另一端接收乱码问题
- struts2的action中返回json格式的数据
- struts2 从action中返回json格式数据:
- 使用jQuery框架的ajax技术,在Struts2返回json格式的数据
- 关于在servlet和action中返回json数据的一些问题
- Struts2里的Action返回Json数据
- struts2怎么设置action返回Json数据
- 如何在客户端接收Action返回的JSON数据
- Struts2中Action返回Json串
- struts2中action返回"json"字符串
- xib的view在控制器中布局混乱
- 继续贪心:删数问题
- 人工智能实验-八数码问题
- Swifl学习之路(一) 常量和变量
- iOS开发中邮箱,电话号码,身份证,密码,昵称正则表达式验证
- 在用struts2框架时在Action中返回json数据
- LeetCode 2 Add Two Numbers
- Fedora 系统配置 rtl8723b 网卡驱动
- Android-ManiFest
- Hadoop伪分布式配置
- 很好的一本linux书籍
- 设计模式学习--状态模式
- leetcode_c++:Search for a Range(034)
- Debian8.4中的OpenSSL安装