SSM——SpringMVC返回值json处理
SSM——SpringMVC返回值json处理
文章目录
处理器的返回值-json数据处理
(1)什么是json
(2)json结构
(3)为什么需要使用JSON交互开发
(4)返回值转json @ResponseBody
(5)参数转json @RequestBody
(6)JSON交互的方式
处理器的返回值-json数据处理
JavaScript Object Notation 脚本对象标签。
用于存储数据的介质,类似于XML/HTML等。
Nosql 数据库Mongodb–》文档数据库。存储的是文档–》存储的JSON。
用于数据的交互。以JSON的方式传递数据。
{}包裹信息,里面是使用:隔开的key/value 一对一对的。
json里面还可以包裹json
{“name”: “John Doe”, “age”: 18, “address”: {“country” : “china”, “zip-code”: “10000”}}
请求客户端种类非常多,请求的方式有各种各样。导致服务端需要处理各种各样的方式的请求。不利于服务端统一开发。
使用JSON交互可以很好兼容各种不同的终端发起的请求。
ajax请求
javaBean对象与json互转 如阿里巴巴的fastjson
注解加在方法上,SpringMVC可以自动将方法的返回对象转为json,发送给页面
在形参的前边加上@RequestBody注解,该注解可以自动解析页面发送过来的json数据,解析完之后,自动的将json中的数据封装到形参对象
pom.xml
com.alibaba
fastjson
1.2.74
junit
junit
4.12
test
TestPersonToJson
public class TestPersnoToJson {
@Test
public void test01(){
Person p = new Person(1,"jack","1234");
String json = JSON.toJSONString(p);//调用静态方法toJSONString,参数传入对象 ,将对象转成json
System.out.println(json);
}
@Test
public void test02(){
String json = "{\"id\":1,\"password\":\"1234\",\"username\":\"jack\"}";
Person p = JSON.parseObject(json,Person.class);//json转javaBean,参1,json 参2 类
System.out.println(p);
}
}
pom.xml
依赖 jackson库
com.fasterxml.jackson.core
jackson-databind
2.11.3
Demo02ReturnController
@RequestMapping(path = "demo05.action",method = {RequestMethod.POST,RequestMethod.GET})//回显页面
public @ResponseBody Object test05(){//
Person p1 = new Person(1,"jack","1234");
Person p2 = new Person(2,"rose","1234");
List list = new ArrayList();
list.add(p1);
list.add(p2);
return list; //springmvc将 list使用ObjectMapper转成json
}
@RequestMapping(path = "demo06.action",method = {RequestMethod.POST,RequestMethod.GET})//回显页面
public ModelAndView test06(@RequestBody Person person){//
System.out.println("object:"+person);
return null;
}
(1)请求是JSON串,在controller方法的形参上使用@RequestBody注解,将请求的JSON串绑定到pojo对象。
(2)请求的是表单提交的方式。直接使用springMVC的参数绑定,不需要做转换。
返回JSON串,在controller方法的返回数据类型前加上@ResponseBody注解,将返回的对象转换为JSON串。
SSM——SpringMVC返回值json处理相关教程
SSM之整合 环境搭建Spring SpringMVC MyBatis
SSM之整合 环境搭建Spring SpringMVC MyBatis 学习目标 SSM整合 CRUD(增删查改) ssm整合说明 SSM框架包括Spring,SpringMVC,Mybatis 要首先搭建好SSM环境,才能再去开发其他环境 整合思路: 1先搭建整合的环境 2把Spring的配置搭建好 3使用Spring整合Sprin
springmvc中的文件上传-下载-删除-------(我的初创)
springmvc中的文件上传-下载-删除-------(我的初创) springmvc框架中的文件上传、下载、删除 简单分析(文件上传–将文件通过form表单提交的Controller程序中[控制器]) **1自定义文件位置 2获取文件名称(也可在获取修改名称) 3调用方法 文件上传代码如下 //**s
SSM——SpringMVC拦截器详细介绍
SSM——SpringMVC拦截器详细介绍 SpringMVC拦截器介绍 (1) interceptor , 是springmvc提供的用来拦截请求的 (2)类似于Servlet的过滤器(Filter)。 (3)给某一些请求加一定处理。 (4)在springMVC中,所有的请求都会走到前端控制器中。拦截器配合前端
LeetCode_1731_返回倒数第k个节点
LeetCode_1731_返回倒数第k个节点 题目链接 https://leetcode-cn.com/problems/kth-node-from-end-of-list-lcci/ 解题思路 王道考研数据结构里面说过这种双指针工作法 初始时,两个指针 p 和 q 均指向 head 先将辅助指针 q 向后移动 k 次。此时 p 和 q 的距离
基于SSM的简易博客项目01
基于SSM的简易博客项目01 这是小菜鸟做的课后笔记,如有不足,望指点 首先创建一个空的project,并对这个工作空间进行设置 字符编码的设置 对maven进行设置,定位到自己使用的maven版本,也可以是系统自带的 设置maven的自动导入 项目结构的SDK设置 这样项目
玩转SpringMVC之响应视图方法类型案例以及使用注意点
玩转SpringMVC之响应视图方法类型案例以及使用注意点 今天在上篇文章《玩转SpringMVC之传参使用,属性绑定以及常用请求注解使用》 https://blog.csdn.net/xtho62/article/details/109071643springmvcdemo的工程路径下,创建新的工程模块名为springmvc_day2_01
SpringBoot的GET请求参数包含[]等特殊符号,返回400状态码
SpringBoot的GET请求参数包含[]等特殊符号,返回400状态码 今天系统2.1版本上线时,忽然发现一个问题,通知公告模块中的一个文件不能下载了,而其他的是可以的,经过仔细的排查发现,是由于文件名中包含了英文的[],问题如下图: 原因分析 Tomcat的新版本中增
【学习笔记】SpringMVC拦截器
【学习笔记】SpringMVC拦截器 拦截器interceptor,是springmvc提供的用来拦截请求的 拦截器与过滤器的区别 filter,是javaEE 提供的用来拦截请求的,所有请求都能拦截 后者只能拦截控制器的方法 拦截器的使用 实现HandlerInterceptor接口 重写方法 配置拦截器