1.@RequestMapping注解
①用在方法上:相当于url-pattern
②用在类上:相当于namespace的含义 工作空间
参数:method={RequestMethod.GET或者POST} 可以指定当前的控制器只处理什么样的请求,默认所有的请求方式都能处理
2.springmvc中跳转的控制
①请求转发:地址栏不变,请求转发链接Servlet处于一次请求,可以使用request作用域传递数据
I.转发跳转到一个Jsp
i.拿着返回值匹配视图解析器中的前缀和后缀(默认)
ii.转发跳转到指定资源
II.转发跳转到一个Controller
②请求重定向:地址栏改变,请求重定向连接的Servlet处于两次请求,不可以使用request作用域传递数据
I.重定向跳转到一个Jsp
II.重定向跳转到一个Controller
3.接收请求参数
①使用原生的方式接收
I.获取原生ServletAPI:在控制器的方法入参中声明您需要的对象。springmvc在调用对应的方法时会自动传入。
注意:springmvc没有提供对ServletContext对象入参形式的获取方式,我们必须手动通过session对象的函数来获取。
II.使用request.getParameter()获取请求参数
登录页面.jsp
②使用springmvc的方式接收:(机制)通过在方法的入参中声明接收的请求参数
I.接收基本数据类型和String类型
参数的类型:是您想要的类型 参数名:默认要与请求参数的key对应
当接收请求参数的变量名与请求参数的key不一致的时候,可以使用@RequestParam注解,手动指定对应关系
注意:使用@RequestParam注解:如果方法的参数指定了@RequestParam注解绑定请求参数的名字,默认情况请求时必须传递对应的请求参数
1.@RequestParam注解属性的含义
value属性:绑定请求参数的key
required:指定当前接收的请求参数是否必须传递,默认为true
defaultValue:指定默认值,当没有传递对应的请求参数时,取此值
2.接收参数时使用包装类型,否则值无法为null
I.自定义对象类型的接收
请求参数的key与方法参数类型中的属性名对应
II.接收日期类型
III.接收List集合
①list集合元素是String类型
②list集合元素是自定义对象类型