目录

一、SpringMVC 数据接收及传递

1.获取参数

1.1 Servlet获取

1.2 参数名获取

1.3 对象映射获取

2.参数传递

2.1 域对象传递

2.2 ModelAndView传递

2.3 Model传递

2.4 ModelMap传递

2.5 传递对象


一、SpringMVC 数据接收及传递

1.获取参数

1.1 Servlet获取

1.在基于注解的控制器中,我们可以通过手工指定参数HttpServletRequest和HttpServletResponse来进行参数的获取,和之前普通的servlet参数获取一致
2.在控制器中手动指定之后便可以获取来自表单或者地址栏传递的数据
3.获取参数代码示例:

spring 使用对象接收get springmvc接收对象_数据

1.2 参数名获取

1.通过在控制器方法中指定和表单字段名一样的参数名便可以直接获取传递的参数值
2.获取参数代码示例:

spring 使用对象接收get springmvc接收对象_数据_02

3.当方法参数名不一样的时候可以通过@RequestParam(表单name名)进行指定

  • 如果@RequestParam(表单name名)参数名不存在则会出错
  • 如果需要@RequestParam(表单name名)参数名不存在也不出错则需要指定@RequestParam(value="filedName",required = false)

spring 使用对象接收get springmvc接收对象_spring 使用对象接收get_03

1.3 对象映射获取

1.可以创建实体类,实体类中的字段和表单字段name名一样,将其作为参数则可以自动赋值
2.对象映射获取示例:

spring 使用对象接收get springmvc接收对象_SpringMVC数据接收及传递_04

2.参数传递

2.1 域对象传递

spring 使用对象接收get springmvc接收对象_表单_05

2.2 ModelAndView传递

1.创建ModelAndView

spring 使用对象接收get springmvc接收对象_数据_06


2.也可以不创建ModelAndView,直接在参数中指定

spring 使用对象接收get springmvc接收对象_表单_07

2.3 Model传递

1.Model传递只能作为参数,然后返回值为String

spring 使用对象接收get springmvc接收对象_SpringMVC数据接收及传递_08

2.4 ModelMap传递

1.ModelMap传递只能作为参数,然后返回值为String
2.ModelMap的使用和Model一致,只是可以使用put和addAttribute方法 

spring 使用对象接收get springmvc接收对象_spring 使用对象接收get_09

 

 

2.5 传递对象

1.使用域对象 

spring 使用对象接收get springmvc接收对象_SpringMVC数据接收及传递_10

2.复杂对象参数会自动放到模型中自动传递,取值是类型首字母小写,如Login为login 

spring 使用对象接收get springmvc接收对象_SpringMVC数据接收及传递_11

3.通过@ModelAttribute指定自定义参数名,指定之后不再通过默认名称获取 

spring 使用对象接收get springmvc接收对象_获取参数_12