1.使用原生的方式接收
代码如下:
@Controller @RequestMapping("/servletAPI") public class servletAPI { @RequestMapping("/requersTest") public String requersTest(HttpServletRequest request){ //可以使用request作用域 request.setAttribute("name","大大大怪兽"); System.out.println("这个是request..."); return "index"; } @RequestMapping("/responseTest") public String responseTest(HttpServletResponse response){ //可以responses作用域 System.out.println(response); return "index"; } @RequestMapping("/sessionTest") public String sessionTest(HttpSession session){ //可以session作用域 session.setAttribute("sname","昊天锤"); System.out.println("session作用域..."); return "redirect:/index.jsp"; }
注意:isELIgnored="false"
<%@ page isELIgnored="true|false"%>
如果设定为真,那么JSP中的表达式被当成字符串处理
jsp获取参数如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false" %> <html> <head> <title>欢迎</title> </head> <body> 11111 ${requestScope.name} ${name} ${sessionScope.sname} ${sname} <hr> hello controller </body> </html>
PS:SpringMVC没有提供servletContest对象入参形式的获取方式,我们必须手动通过session对象的函数来获取
即:
session.getServletContext();
2.使用SpringMVC的方式接收
注意:SpringMVC是通过在方法的入参中声明接收的请求参数。
-
基本数据类型和String类型
-
* SpringMVC接收请求参数
1.接收基本类型和String类型的参数
参数类型:个人需要的类型
参数名:需要和请求参数的key对应,前端传过来的参数
当接收请求参数的变量名 与 请求参数的key不一致的时候,可以使用一个注解
PS:
-
如果请求方法的参数指定了@RequestParam注解绑定请求参数的名字,默认情况 请求时必须传递对应的请求参数
-
@RequestParam注解属性的含义:
value 属性: 绑定请求参数的key
required属性: 指定当前接收的请求参数是否必须传递, 默认为true(必须)
defaultValue属性: 指定默认值, 当没有传递对应的请求参数时,取此值
-
-
自定义对象类型的接收
-
请求参数的key与方法参数类型中的属性名对应
-
-
日期类型的接收
-
接收list集合类型
-
list集合元素是String类型
-
list集合元素是自定义对象类型
通过下标的形式给集合指定的元素对象属性封装值
-
-
-
参数是String类型
-
参数是自定义类型
-
-
接收map集合类型
-
参数是String类型
-
-