Spring boot 学习 九
一:经过试验发现,如果使用如下的Controller(@RequestBody), 前台POST的请求body只能是JSON,如果是form-data, X-www-form-urlencoded 或者XML都会报415 Unsupported Media Type错误
@RequestMapping(value = "/users", method = RequestMethod.POST )
public String addUser(@RequestBody User user, HttpServletRequest request) {
userService.addUser(user);
return "OK";
}
二:如果要接受form-data / X-www-form-urlencoded: 可以用HttpServletRequest, 使用如下的方法来获得参数。
request.getParameterNames()
   request.getParameter("AA")
request.getParameterMap()
@RequestMapping(value = "/users/new", method = RequestMethod.POST )
public String addUser( HttpServletRequest request) {
System.out.println(request.getQueryString());
return "OK";
}
三: form-data 和 X-www-form-urlencoded 有什么区别
form-data可以上传文件和键值对; X-www-form-urlencoded只能上传键值对。
Spring boot 学习 九的更多相关文章
- spring boot 学习(九)小工具篇:?秒防刷新
		注解 + 拦截器:?秒防刷新 小工具篇:工具许多都是我以前在 github 之类开源平台找到的小工具类,作者的信息什么的许多都忘了.先说声不好意思了.若有相关信息,麻烦提醒一下~ 解释 所谓的?秒防刷 ... 
- Spring Boot 学习笔记(六) 整合 RESTful 参数传递
		Spring Boot 学习笔记 源码地址 Spring Boot 学习笔记(一) hello world Spring Boot 学习笔记(二) 整合 log4j2 Spring Boot 学习笔记 ... 
- spring boot / cloud (九) 使用rabbitmq消息中间件
		spring boot / cloud (九) 使用rabbitmq消息中间件 前言 rabbitmq介绍: RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.它可以用于大型软件系统 ... 
- Spring Boot学习大全(入门)
		Spring Boot学习(入门) 1.了解Spring boot Spring boot的官网(https://spring.io),我们需要的一些jar包,配置文件都可以在下载.添置书签后,我自己 ... 
- Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客
		==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ... 
- Spring boot学习1 构建微服务:Spring boot 入门篇
		Spring boot学习1 构建微服务:Spring boot 入门篇 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ... 
- spring Boot(十九):使用Spring Boot Actuator监控应用
		spring Boot(十九):使用Spring Boot Actuator监控应用 微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台 ... 
- spring boot 学习资料
		spring boot 学习资料: 学习资料 网址 Spring Boot Cookbook-极客学院 http://wiki.jikexueyuan.com/project/spring-boot- ... 
- Spring Boot学习笔记2——基本使用之最佳实践[z]
		前言 在上一篇文章Spring Boot 学习笔记1——初体验之3分钟启动你的Web应用已经对Spring Boot的基本体系与基本使用进行了学习,本文主要目的是更加进一步的来说明对于Spring B ... 
随机推荐
- oracle查询数据库资源位置
			archival log list; 归档日志文件位置 select file_name from dba_data_files; 查询数据库文件位置 select parameter control ... 
- rpm包查看和解压(转)
			From:http://www.51testing.com/html/57/28557-205195.html 查看rpm包内容: rpm -qpl *.rpm 解压rpm包: rpm2cpio *. ... 
- 【NOI2015】【程序自己主动分析】【并查集+离散化】
			Description 在实现程序自己主动分析的过程中,经常须要判定一些约束条件能否被同一时候满足. 考虑一个约束满足问题的简化版本号:如果x1,x2,x3,-代表程序中出现的变量.给定n个形如xi= ... 
- GC入门指南(二)------GC工作原理
			本系列博客旨在帮助大家理解java垃圾收集器及其工作原理,这是系列的第二篇. java垃圾回收事实上是由一个能够进行自己主动内存管理的进程完毕的,这使得程序猿在写代码的时候不必过多考虑内存释放与回收的 ... 
- java中随机生成汉字
			main方法中使用: //随机生成100个汉字 String ss=""; for(int i=0;i<100;i++){ ss+=getChinese(i); } Syst ... 
- [转]C#中的结构体与类的区别
			C#中的结构体与类的区别 经常听到有朋友在讨论C#中的结构与类有什么区别.正好这几日闲来无事,自己总结一下,希望大家指点. 1. 首先是语法定义上的区别啦,这个就不用多说了.定义类使用关键字cla ... 
- Linux下/usr/bin/python被删除的后果
			可能部分的人使用linux都有直接root登陆的习惯,这有很大的便利性,因为很多的命令不需要使用sudo请求root权限.但是使用root权限,所有的命令都会立即被执行,即使这个命令是对系统有害处的. ... 
- 剑指Offer:栈的压入、弹出序列【31】
			剑指Offer:栈的压入.弹出序列[31] 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈 ... 
- ruby 正则表达式
			Ruby学习笔记-正则表达式 Posted on 2011-11-29 17:55 Glen He 阅读(4998) 评论(0) 编辑 收藏 1.创建正则表达式 a) reg1 = /^[a-z]*$ ... 
- contenttype应用 , 缓存相关
			一. Django的contenttypes contenttypes 是Django内置的一个应用,可以追踪项目中所有 app和model 的对应关系,并记录在 django_content_typ ... 
