SpringMVC的请求
一.获得参数
1.获得基本类型参数
Controller中的业务方法的参数名称要与请求参数的name一致,参数值会自动映射匹配
2.获得pojo类型参数
Controller中的业务方法的POJO参数属性名要与请求参数的name一致,参数值会自动映射匹配
3.获得数组型参数
Controller中的业务方法的数组名称要与请求参数的name一致,参数值会自动映射匹配
4.获得集合类型参数
获得集合参数时,要将集合参数包装到一个POJO中才可以
当使用ajax提交时,可以指定contentType为json形式,那么在方法参数位置使用@RequestBody可以直接接受集合数据而不需要POJO类进行包装
5.请求数据乱码问题
post请求数据出现乱码,可以设置一个过滤器进行编码的过滤
6.参数绑定注解@requestParam
当请求的参数名称与Controller的业务参数名称不一致时,就需要通过@RequestParam注解显示的绑定
value:请求参数名称 required:在指定的请求参数是否必须包括,默认为true。 defaultValue:没有指定请求参数时,使用指定的默认值赋值
7.获得Resultful风格的参数
Resultful风格的请求是使用"url+请求方式"表示一次请求目的
8.自定义类型转换器
SpringMVC默认提供了一些常用的类型转换器,但是有些数据类型需要自定义转换器,例如:日期类型的数据
自定义转换器步骤:1.定义转化器类实现Converter接口 2.在配置文件声明转换器 3.在<annotation-driven>中引用转换器
9.获得Servlet相关API
SpringMVC支持使用原始ServletAPI对象作为控制器方法的参数进行注入
常用ServletAPI:HttpServletRequest HttpServletResponse HttpSession
10.获取请求头
①@RequestHeader 属性:value:请求头的名称 required:是否必须携带此请求头
11.文件上传
①文件上传客户端三要素
表单项type="file"
表单的提交方式是post
表单的enctype属性是多部分表单形式,及enctype= "multipart/form-data"
②单文件上传步骤
导入fileupload和io坐标,配置文件上传解析器,编写文件上传代码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现