Spring MVC 学习笔记11 —— 后端返回json格式数据
Spring MVC 学习笔记11 —— 后端返回json格式数据
我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点:
1. JSON的全称是”JavaScript Object Notation”,意思是JavaScript对象表示法.
2. 它是一种基于文本,独立于语言的轻量级数据交换格式.
3. json的两种结构:对象{key:value,key:value,...} 和 数组 [value, value2, ... ]
4. json字符串:普通字符串、json字符串、json对象的区别
5. 不同编程工具使用json的方法
参考:http://www.cnblogs.com/mcgrady/archive/2013/06/08/3127781.html
Spring MVC 返回json数据,用show来实现:
UserController.java:
保持两套请求,一套是传统的请求返回数据;一套是请求json格式返回数据。
//6. 查一个用户 show.jsp
@RequestMapping(value="/{username}", method=RequestMethod.GET)
public String show(@PathVariable String username, Model model){
model.addAttribute("user1",users.get(username)); //user1参数属性名,到了视图,就是user1
return "user/show";
} //6. 查一个用户 show.jsp
@RequestMapping(value="/{username}", method=RequestMethod.GET, params="jsoon")
@ResponseBody //这里要加一行
public User show(@PathVariable String username){ //声明中没有了Model
//model.addAttribute("user1",users.get(username));
return users.get(username); //不返回String了,返回user对象
}
说明,以上代码中:
1. 增加@ResponseBody,
2. no return String, but User Object
3. no Model
4. directly return users.get(username)//注意返回的是一个User对象
5. 可以在RequestMapping行增加一个请求值:Params="jsoon"//这是规定如要进这个方法返回json,需要带个参数jsoon
此时可测试,返回406错误如图:(通过url加入?jsoon访问了,但没有头文件为它进行解释)
所以我们需要加入一个jar包:jackson-all-1.x.x.jar
从这个网址可以下载到:http://jarfiles.pandaidea.com/jackson.all.html
把jar包复制到项目文件夹/lib文件夹下,重新debug,链接进入:http://localhost:8080/myhello/user/sdy?jsoon
此时,有的浏览器Chrome,firefox等能显示如下,其他浏览器如360等,会提示下载sdy.json文件,notepad++打开以后也是如下内容。
Enjoy ;)
Spring MVC 学习笔记11 —— 后端返回json格式数据的更多相关文章
- JS学习笔记(3)--json格式数据的添加,删除及排序方法
这篇文章主要介绍了json格式数据的添加,删除及排序方法,结合实例形式分析了针对一维数组与二维数组的json格式数据进行增加.删除与排序的实现技巧,需要的朋友可以参考下 本文实例讲述了json格式 ...
- Spring MVC 学习笔记一 HelloWorld
Spring MVC 学习笔记一 HelloWorld Spring MVC 的使用可以按照以下步骤进行(使用Eclipse): 加入JAR包 在web.xml中配置DispatcherServlet ...
- Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建
Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...
- Spring MVC 学习笔记9 —— 实现简单的用户管理(4)用户登录显示局部异常信息
Spring MVC 学习笔记9 -- 实现简单的用户管理(4.2)用户登录--显示局部异常信息 第二部分:显示局部异常信息,而不是500错误页 1. 写一个方法,把UserException传进来. ...
- Spring MVC 学习笔记8 —— 实现简单的用户管理(4)用户登录
Spring MVC 学习笔记8 -- 实现简单的用户管理(4)用户登录 增删改查,login 1. login.jsp,写在外面,及跟WEB-INF同一级目录,如:ls Webcontent; &g ...
- Spring MVC 学习笔记1 - First Helloworld by Eclipse【& - java web 开发Tips集锦】
Spring MVC 学习笔记1 - First Helloworld by Eclipse reference:http://www.gontu.org 1. 下载 Spring freamwork ...
- Spring MVC 学习笔记10 —— 实现简单的用户管理(4.3)用户登录显示全局异常信息
</pre>Spring MVC 学习笔记10 -- 实现简单的用户管理(4.3)用户登录--显示全局异常信息<p></p><p></p>& ...
- Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目
Spring MVC 学习笔记2 - 利用Spring Tool Suite创建一个web 项目 Spring Tool Suite 是一个带有全套的Spring相关支持功能的Eclipse插件包. ...
- ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...
随机推荐
- 排序算法<No.5>【堆排序】
算法,是系统软件开发,甚至是搞软件的技术人士的核心竞争力,这一点,我坚信不疑.践行算法实践,已经有一段时间没有practise了,今天来一个相对麻烦点的,堆排序. 1. 什么是堆(Heap) 这里说的 ...
- 【java】对象赋值给另一个对象
对基本数据类型的赋值很简单的.基本类型存储了实际的数值,而并非指向一个对象的引用,所以在赋值的时候,是直接将一个地方的内容复制到另一个地方.对于a=b,修改b后并不会影响到a,这正是我们大多数情况下所 ...
- Delphi调用DLL中的接口
问题描述: 具体问题就是在隐式使用接口变量后,在FreeLibrary执行后,就会出现一个非法访址的错误. 这个错误的原因就是在FreeLibrary后,DLL以的代码均为不可用状态,而在代码执行完整 ...
- 解决iScroll横向滚动区域无法拉动页面的问题
近期项目中使用iScroll遇到一个问题,在设定wrapper为横向滚动时,如果你手指放在该区域,将无法拉动页面,也就是说该区域取消了默认事件.这个体验是实在是无法接受,特别是页面中有多个横向滚动区域 ...
- git add , git commit 添加错文件 撤销
1. git add 添加 多余文件 这样的错误是由于, 有的时候 可能 git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件 git add 如果添加了错误的文件的话 撤 ...
- windows下安装mingw-w64
mingw-w64应该可以算是mingw的改进版本吧,mingw系列编译器是非常好的并且主流的c/c++编译器 mingw-w64只负责程序的编译,只提供命令行操作没有编辑代码的图像界面,代码的编写需 ...
- table 设置每列的颜色
ISBN Title Price 3476896 My first HTML $53 5869207 My first CSS $49 <!DOCTYPE html> <html ...
- Boost--variant (C++中的union)
union联合体类型的问题 只能用于内部类型,这使得union在C++中几乎没有用 所以boost提供了variant,相当于是C++中的union #include "boost/vari ...
- elasticsearch 5.1 别的机器无法访问9200端口
版权声明:作者:jiankunking 出处:http://blog.csdn.net/jiankunking 本文版权归作者和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显 ...
- QTreeWidget的Item点击事件
转载:cw123458945 #!/usr/bin/env python import sys from PyQt4.QtCore import SIGNAL from PyQt4.QtGui imp ...