java接受数据表单
1.方法索引
1.HttpServletRequest介绍
公共接口类HttpServletRequest继承自ServletRequest。
客户端浏览器发出的请求被封装成为一个HttpServletRequest对象。
对象包含了所有的信息包括请求的地址,请求的参数,提交的数据,上传的文件客户端的ip甚至客户端操作系统都包含在其内。
HttpServletResponse继承了ServletResponse接口,并提供了与Http协议有关的方法,这些方法的主要功能是设置HTTP状态码和管理Cookie
2.HttpServletResponse对象
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对象。
3.request和response对象即然代表请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就行了。
要向客户机输出数据,只需要找response对象就行了。
4.setContentType
是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据。
1.java获取HTML表单信息
1.首先创建一个html表单文件
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表单</title>
</head>
<body>
//action值对应的是要把信息提交到的地址,通过get方法传送过去
<form action="/sh-web-servlet003/demo001" method="get">
用户名:
<input type="text" name="username"><br/>
密码:
<input type="text" name="password"><br/>
男:<input type="radio" name="sex" value="男" checked="checked">
女:<input type="radio" name="sex" value="女"><br/>
<input type="checkbox" name="hobby" value="篮球">篮球
<input type="checkbox" name="bobby" value="歌唱">唱歌
<input type="checkbox" name="bobby" value="画画">画画<br/>
<select name="city">
<option>---请选择---</option>
<option value="sh">上海</option>
<option value="bj">北京</option>
<option value="tj">天津</option>
</select><br/>
<input type="submit" value= "提交">
</form>
</body>
</html>
1.1java获取表单信息步骤
1.2内容简介
1.单词原解
getParameter get/获取 parameter/参数
BeanUtils Bean/豆 Utils/工具
populate 充填
2.getParameter 是用于读取提交的表单中的值,或者是某个表 单提交过去的数据.获取的是POST/GET传递的参数值
getParameter:用于客户端重定向时,即点击了链接或提交按扭时传值用,即用于在用表单或url重定向传值时接收数据用
1.3java获取表单信息实现代码
xml配置xingx
<servlet>
<servlet-name>demo01</servlet-name>
<servlet-class>come.lanou3g.Demo01</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo01</servlet-name>
<url-pattern>/demo01</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>demo02</servlet-name>
<servlet-class>come.lanou3g.Demo02</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo02</servlet-name>
<url-pattern>/demo02</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>demo03</servlet-name>
<servlet-class>come.lanou3g.Demo03</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo03</servlet-name>
<url-pattern>/demo03</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>demo04</servlet-name>
<servlet-class>come.lanou3g.Demo04</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo04</servlet-name>
<url-pattern>/servlet/demo04</url-pattern>
</servlet-mapping>
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Demo01 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
String sex = request.getParameter("sex");
String[] hobbys = request.getParameterValues("hobby");
if (hobbys != null) {
for (String string : hobbys) {
System.out.println(string);
}
}
String city = request.getParameter("city");
System.out.println(username);
System.out.println(password);
System.out.println(sex);
System.out.println(city);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
1.2使用对象接受打印表单
1.创建User对象
package come.lanou3g;
import java.util.Arrays;
public class User {
private String username;
private String password;
private String sex;
private String[] hobby;
private String city;
public User() {
super();
}
public User(String username, String password, String sex, String[] hobby, String city) {
super();
this.username = username;
this.password = password;
this.sex = sex;
this.hobby = hobby;
this.city = city;
}
@Override
public String toString() {
return "User [username=" + username + ", password=" + password + ", sex=" + sex + ", hobby="
+ Arrays.toString(hobby) + ", city=" + city + "]";
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public String[] getHobby() {
return hobby;
}
public void setHobby(String[] hobby) {
this.hobby = hobby;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
}
2.请求转发,请求重定向,请求包含
package come.lanou3g;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Demo02 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
request.setAttribute("name", "wang");
request.getRequestDispatcher("/demo03").forward(request, response);
System.out.println("我是demo2");
out.write("123");
}
public void fun2(HttpServletResponse response) throws IOException {
response.sendRedirect("/sh-web-servlet003/demo03");
System.out.println("我是demo02的结尾");
}
public void fun1(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
RequestDispatcher dispatcher = request.getRequestDispatcher("../http://www.baidu.com");
dispatcher.forward(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
package come.lanou3g;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Demo03 extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("456");
String name = (String)request.getAttribute("name");
System.out.println("我是demo03"+name);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}