SpringMVC请求参数
通过控制器获取请求参数
在控制器方法的形参位置,设置和请求参数同名的形参,当浏览器发送请求,匹配到请求映射时,
在DispatcherServlet中就会将请求参数赋值给相应的形参
@RequestParam
是将请求参数和控制器方法的形参创建映射关系
有value,required,defaultValue三个参数:
value:指定为形参赋值的请求参数的参数名
required:设置是否必须传输此请求参数,默认值为true,
(在为true的情况下,如果没有传输参数,报错400,Required String Parameter 'xxxxxxxxx' is not present;)
defaultValue:当value所指定的参数没有传输时,使用默认值
使用实体类来获取请求参数
创建一个Java类,包含其get,set方法,有参构造函数,无参构造函数。表单各项的name值与其属性相同,即可获得
<form th:action="@{/tp/testPOJO}" method="post">
用户名:<input type="text" name="username"/><br>
密码:<input type="password" name="password"/><br>
性别:<input type="radio" name="sex" value="男"/>男<input type="radio" name="sex" value="女"/>女<br>
邮箱:<input type="text" name="email"><br>
年龄:<input type="text" name="age" /><br>
<input type="submit" value="使用POJO(实体类)请求参数">
</form>
//实体类 package com.controller.bean; public class User { private String username; private Integer id; private String password; private Integer age; private String sex; private String email; public User(String username, Integer id, String password, Integer age, String sex, String email) { this.username = username; this.id = id; this.password = password; this.age = age; this.sex = sex; this.email = email; } public User() { } @Override public String toString() { return "User{" + "username='" + username + '\'' + ", id=" + id + ", password='" + password + '\'' + ", age=" + age + ", sex='" + sex + '\'' + ", email='" + email + '\'' + '}'; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
浙公网安备 33010602011771号