赞
赏
使用 HttpServletRequest 对象,获取表单提交数据,并使用 BeanUtils 工具类封装数据。
使用 HttpServletRequest 对象,获取表单提交数据,并使用 BeanUtils 工具类封装数据。
注册界面:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册界面</title>
</head>
<body>
<h2>用户注册</h2>
<form action="demo05" method="post">
用户名: <input type="text" name="name"><br/>
性别: <input type="radio" name="gender" value="男" checked="checked"/>男
<input type="radio" name="gender" value="女"/>女 <br/>
城市:
<select name="city">
<option value="广州">广州</option>
<option value="深圳">深圳</option>
<option value="上海">上海</option>
</select>
<br/>
爱好:
<input type="checkbox" name="hobby" value="篮球"/>篮球
<input type="checkbox" name="hobby" value="游泳"/>游泳
<input type="checkbox" name="hobby" value="跑步"/>跑步
<br/>
<input type="submit" value="注册"/>
</form>
</body>
</html>
User 类代码:
public class User {
// 属性
private String name;
private String gender;
private String city;
private String hobby[];
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", gender='" + gender + '\'' +
", city='" + city + '\'' +
", hobby=" + Arrays.toString(hobby) +
'}';
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String[] getHobby() {
return hobby;
}
public void setHobby(String[] hobby) {
this.hobby = hobby;
}
}
Servlet 代码:
@WebServlet("/demo05")
public class Servlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
// 获取表单提交数据
Map<String, String[]> map = request.getParameterMap();
// 创建User对象
User user = new User();
// 使用BeanUtils工具类封装表单数据
try {
BeanUtils.populate(user,map);
} catch (Exception e) {
e.printStackTrace();
}
// 打印User对象
System.out.println("嗨客网(www.haicoder.net)\n");
System.out.println("【表单数据】:" + user);
}
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}
所需 Jar 百度云资源地址:
链接:https://pan.baidu.com/s/1RNY7vMUbXTYBZRU_96cizg 提取码:5g98
导入 Jar 包,如下图:
添加 Jar 到库中,如下图:
选择 ok,如下图:
项目结构如下:
项目启动后,提交表单,如下图:
可能出现乱码问题,如下图:
当出现乱码问题,需要配置 Tomcat,如下图:
配置编码,如下图:
重新提交表单,程序运行成功,如下图:
以上案例通过 HttpServletRequest 对象,获取表单提交的数据,并使用 BeanUtils 工具类封装数据。