SSH返回Json格式的数据
2015-06-08 17:25
633 查看
在开发中我们经常遇到客户端和后台数据的交互,使用比较多的就是json格式了。在这里以简单的Demo总结两种ssh返回Json格式的数据
项目目录如下
主要是看 上图选择的部分 WebRoot里面就是平常的配置
第一种方法是使用com.google.gson.Gson 将对象转化为Json字符串 (gson-1.6.jar) 主要的代码如下
在Action中我们直接将返回的数据封装成Map对象即可 再使用上面的工具类即可
struts 配置如下
<package name="default" extends="struts-default" namespace="/">
<global-results>
<result name="error">/Error.jsp</result>
</global-results>
<action name="userAction" class="userAction">
</action>
</package>
通过浏览器访问返回的数据如下(http://127.0.0.1:8080/DataJson/userAction?name=javen&pass=123)
[b]第一种方法是使用Struts配置实现 将对象转化为Json字符串 主要的代码如下[/b]
[b]1、private Map<String, Object> jsonResult; 将声明的对象封装生成get和set方法[/b]
[b]2、封装查询的数据到Map集合中 代码如下[/b]
3、配置struts (注意要extends >>>json-default)
通过浏览器访问返回的数据如下
源码下载地址 http://download.csdn.net/detail/zyw_java/7101821
项目目录如下
主要是看 上图选择的部分 WebRoot里面就是平常的配置
第一种方法是使用com.google.gson.Gson 将对象转化为Json字符串 (gson-1.6.jar) 主要的代码如下
package com.javen.tool; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.http.HttpServletResponse; import com.google.gson.Gson; public class ResultUtils { public static void toJson(HttpServletResponse response, Object data) throws IOException { Gson gson = new Gson(); String result = gson.toJson(data); response.setContentType("text/json; charset=utf-8"); response.setHeader("Cache-Control", "no-cache"); //取消浏览器缓存 PrintWriter out = response.getWriter(); out.print(result); out.flush(); out.close(); } }
在Action中我们直接将返回的数据封装成Map对象即可 再使用上面的工具类即可
public String execute() { Map<String, Object> map = new HashMap<String, Object>(); String status = null; try { System.out.println(name + "" + pass); if (!Tools.isEmpty(name) && !Tools.isEmpty(pass)) { User user = new User(); user.setName(name); user.setPassword(pass); List<User> list = userHander.getUserDAO().findByExample(user); System.out.println(list.size()); if (list.size() > 0) { status = "1"; map.put("users", list); } else { status = "null"; } } else { status = "0"; } map.put("status", status); ResultUtils.toJson(ServletActionContext.getResponse(), map); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; }
struts 配置如下
<package name="default" extends="struts-default" namespace="/">
<global-results>
<result name="error">/Error.jsp</result>
</global-results>
<action name="userAction" class="userAction">
</action>
</package>
通过浏览器访问返回的数据如下(http://127.0.0.1:8080/DataJson/userAction?name=javen&pass=123)
[b]第一种方法是使用Struts配置实现 将对象转化为Json字符串 主要的代码如下[/b]
[b]1、private Map<String, Object> jsonResult; 将声明的对象封装生成get和set方法[/b]
[b]2、封装查询的数据到Map集合中 代码如下[/b]
public String userToJson(){ Map<String, Object> map = new HashMap<String, Object>(); String status = null; try { System.out.println(name + "" + pass); if (!Tools.isEmpty(name) && !Tools.isEmpty(pass)){ User user = new User(); user.setName(name); user.setPassword(pass); List<User> list = userHander.getUserDAO().findByExample(user); System.out.println(list.size()); if (list.size() > 0) { status = "1"; map.put("users", list); } else { status = "null"; } } else { status = "0"; } map.put("status", status); jsonResult=map; return "success"; } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; }
3、配置struts (注意要extends >>>json-default)
<!-- 使用struts2 配置来实现 返回Json数据 --> <package name="json" extends="struts-default,json-default" namespace="/"> <global-results> <result name="error">/Error.jsp</result> </global-results> <action name="userjson" class="userAction" method="userToJson"> <result type="json" > <param name="root">jsonResult</param> </result> </action> </package>
通过浏览器访问返回的数据如下
源码下载地址 http://download.csdn.net/detail/zyw_java/7101821
相关文章推荐
- JavaScript开发规范
- JS判断手机浏览器
- 实体类中含集合或者map的json转换
- Js数组排序函数sort()介绍
- JavaScript 开发的45个经典技巧
- javaScript几种设计模式之一——单体模式
- js中一些简单的验证函数
- JS + flash 复制
- JS获取浏览器及屏幕高度和宽度等信息
- umx.js压缩
- Js 一些方法(一)
- Java,JSP,JavaScript三者区别与联系
- DOM操作表格
- js中arguments的用法
- 省市二级联动的js
- ES6:JavaScript 新特性
- Ext.grid 刷新后选中指定行
- JavaScript获取URL汇总
- jstl获取当前时间
- js面向对象学习笔记之九(BOM 与 DOM 中常用属性分析)