spring mvc 传送客户端数据到控制器
spring mvc 运行以多种方式将客户端中的数据传送到控制器的处理器方法中,包括:
- 查询参数(query Parameter)
- 表单参数(Form Parameter)
- 路径变量(Path Variavle)
通过路径参数接受输入
- 理想情况下,要识别的资源应该通过URL路径进行标示,而不是通过查询参数.即:对"/splites/12345"发起get请求要优于对"/splites/show?splittle_id=12345"发起请求.前者可以识别出要查询资源,而后者是带有参数的一个参数 ---本质上是通过HTTP发起的rpc.
- 为了实现路径变量,Spring mvc 允许我们在@requestMapping路径中添加占位符.占位符的名称要用大括号("{"和"}")括起来.路径中的其他部分与所处理的请求完全匹配.但是占位符可以是任意的值.
需要注意的是,如果想要重命名参数时,必须要同时修改占位符的名称,使其互相匹配.
处理表单
- 在处理post请求时,在请求处理完成后,最好进行一下重定向,这样浏览器的刷新就不会重复提交表单了 .
- 视图格式中的"redirect:"前缀与"forward:"前缀.
当InternalResourceViewResolver看到视图格式中的"redirect:"前缀时,它就知道要将其解析为重定向的规则,而不是视图的名称.
当它发现视图格式以"forward:"作为前缀时,请求将会前往(forward)制定的URL路径,而不再是重定向.