SSH返回Json格式的数据
来源:互联网 发布:macbook使用windows 编辑:程序博客网 时间:2024/06/05 03:33
在开发中我们经常遇到客户端和后台数据的交互,使用比较多的就是json格式了。在这里以简单的Demo总结两种ssh返回Json格式的数据
项目目录如下
主要是看 上图选择的部分 WebRoot里面就是平常的配置
第一种方法是使用com.google.gson.Gson 将对象转化为Json字符串 (gson-1.6.jar) 主要的代码如下
1 package com.javen.tool; 2 3 import java.io.IOException; 4 import java.io.PrintWriter; 5 6 import javax.servlet.http.HttpServletResponse; 7 8 import com.google.gson.Gson; 9 10 public class ResultUtils {11 public static void toJson(HttpServletResponse response, Object data) 12 throws IOException {13 Gson gson = new Gson();14 String result = gson.toJson(data);15 response.setContentType("text/json; charset=utf-8");16 response.setHeader("Cache-Control", "no-cache"); //取消浏览器缓存17 PrintWriter out = response.getWriter();18 out.print(result);19 out.flush();20 out.close();21 }22 23 24 }
在Action中我们直接将返回的数据封装成Map对象即可 再使用上面的工具类即可
1 public String execute() { 2 Map<String, Object> map = new HashMap<String, Object>(); 3 String status = null; 4 try { 5 System.out.println(name + "" + pass); 6 if (!Tools.isEmpty(name) && !Tools.isEmpty(pass)) { 7 User user = new User(); 8 user.setName(name); 9 user.setPassword(pass);10 List<User> list = userHander.getUserDAO().findByExample(user);11 System.out.println(list.size());12 if (list.size() > 0) {13 status = "1";14 map.put("users", list);15 } else {16 status = "null";17 }18 } else {19 status = "0";20 }21 map.put("status", status);22 ResultUtils.toJson(ServletActionContext.getResponse(), map);23 } catch (IOException e) {24 // TODO Auto-generated catch block25 e.printStackTrace();26 }27 return null;28 }
struts 配置如下
1 <package name="default" extends="struts-default" namespace="/">2 <global-results>3 <result name="error">/Error.jsp</result>4 </global-results>5 6 <action name="userAction" class="userAction">7 </action> 8 </package>
通过浏览器访问返回的数据如下(http://127.0.0.1:8080/DataJson/userAction?name=javen&pass=123)
第一种方法是使用Struts配置实现 将对象转化为Json字符串 主要的代码如下
1、private Map<String, Object> jsonResult; 将声明的对象封装生成get和set方法
2、封装查询的数据到Map集合中 代码如下
1 public String userToJson(){ 2 Map<String, Object> map = new HashMap<String, Object>(); 3 String status = null; 4 try { 5 System.out.println(name + "" + pass); 6 if (!Tools.isEmpty(name) && !Tools.isEmpty(pass)){ 7 User user = new User(); 8 user.setName(name); 9 user.setPassword(pass);10 List<User> list = userHander.getUserDAO().findByExample(user);11 System.out.println(list.size());12 if (list.size() > 0) {13 status = "1";14 map.put("users", list);15 } else {16 status = "null";17 }18 } else {19 status = "0";20 }21 map.put("status", status);22 jsonResult=map;23 return "success";24 } catch (Exception e) {25 // TODO Auto-generated catch block26 e.printStackTrace();27 }28 return null;29 }
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
0 0
- SSH返回Json格式的数据
- SSH返回Json格式的数据
- SSH返回Json格式的数据
- SSH返回Json格式的数据
- SSH返回Json格式的数据
- SSH返回Json格式的数据
- SSH:Struts2的Action如何返回JSON格式的数据?
- SSH返回json格式数据到easyui grid展示
- 返回json格式数据
- WebService 返回json格式和返回xml格式的数据
- 关于response返回json格式的数据
- ajax处理返回的json格式数据
- jquery请求返回json格式的数据
- Servlet返回JSON格式的数据
- Spring MVC返回JSON格式的数据
- Spring MVC返回JSON格式的数据
- springMVC返回复杂的json格式数据
- SSH三大框架集成中,使用jQuery框架 Ajax技术返回json格式的数据(二)
- 优化反射性能的总结
- Log4j
- 黑马程序员-----------反射
- 年轻?大有所为!——问题集三 空格
- 重温《C++ Primer》笔记四 构造函数的初始化列表
- SSH返回Json格式的数据
- SQL 基础--> 子查询
- POJ 3617 Best Cow Line 贪心
- proxool详细配置
- C语言中的errno(错误报告)用法
- nginx编译安装pagespeed 优化网站访问速度
- 字节字符和整数转换-大小端转换-结构体内存(文件)对齐规则之总结
- IOS开发之地图与定位
- 可变参数的函数与宏