前端通过form,提交数据到后端,后端通过request对象的getParameter方法,可以直接获取value。
如果要返回数据,可以设置在response里面。
一,html注册表单
<!DOCTYPE html>
<html>
<head>
<title>Login.html</title>
<meta name="keywords" content="keyword1,keyword2,keyword3">
<meta name="description" content="this is my page">
<meta name="content-type" content="text/html; charset=UTF-8">
<!--<link rel="stylesheet" type="text/css" href="./styles.css">-->
</head>
<body>
<form action="/M1/demo1" method="post">
用户名<input type="text" name="user"><br>
密码:<input type="password" name="pass"><br>
性别:<input type="radio" value="男" name="sex" checked="checked">男
<input type="radio" value="女" name="sex">女<br>
爱好:<input type="checkbox" value="打球" name="like">打球
<input type="checkbox" value="打代码" name="like">打代码
<input type="checkbox" value="打游戏" name="like">打游戏<br>
去过的城市:<select name="select">
<option>请选择</option>
<option value ="北京">北京</option>
<option value ="上海">上海</option>
<option value ="广州">广州</option>
</select><br>
<input type="submit" value="提交">
</form>
</body>
</html>
二,获取数据
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Demo1 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//接受到表单的数据, 先使用request设置服务器应该使用的字符编码,否则字符不统一会出现乱码
request.setCharacterEncoding("UTF-8");
//获取请求的数据
String user = request.getParameter("user");
String pass = request.getParameter("pass");
String sex = request.getParameter("sex");
String[] like = request.getParameterValues("like");
String to = request.getParameter("select");
System.out.println(user+pass+sex+to);
for (int i=0; like!=null && i<like.length; i++){
System.out.println(like[i]);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
request请求有很多get方法可以获取客户端的信息,还可以获取来自表单的数据。
对表单数据类型的不同,获取的方法不同, 像文本框和密码框或者单选框直接用getParameter(名)方法获取数据, 像多选框使用getParameterValues(名)获取多组数据
request.setCharacterEncoding(编码格式);
作用是在后来getParmeter()获取数据后不会出现乱码, 统一字符集。
单选框按钮可以通过checked=”checked” 来设置默认选中
参考资料:
servlet 获取表单数据
https://blog.csdn.net/qq_36238595/article/details/74853042

本文介绍了如何在Servlet中获取前端通过表单提交的数据,包括使用request.getParameter方法获取文本框、密码框和单选框的数据,使用getParameterValues方法处理多选框数据,并通过setCharacterEncoding方法避免乱码问题。

3045

被折叠的 条评论
为什么被折叠?



