reg.jsp注册页面,用表单提交数据
userinfo.jsp展示页面,展示用户数据
Users.java定义用户实体类
RegServlet.java是处理提交的数据,重定向到userinfo中
reg.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>用户注册</title>
</head>
<body>
<form name="regForm" action="servlet/RegServlet" method="post">
<fieldset>
<legend>用户注册</legend>
<label for="username">用户名:</label>
<br />
<input type="text" name="username" size="30" maxlength="100" />
<br />
<label for="password">密码:</label>
<br />
<input type="password" name="password" size="30" maxlength="100" required="required" />
<br />
<label for="email">电子邮箱:</label>
<br />
<input type="email" name="email" size="30" maxlength="100" />
<br />
<label>性别:</label>
<br />
<input type="radio" name="gender" value="male" checked />男
<input type="radio" name="gender" value="female" />女
<br />
<label for="birthday">出生日期:</label>
<br />
<input type="date" name="birthday" />
<br />
<label for="favorite">爱好:</label>
<br />
<input type="checkbox" name="favorite" value="music" checked />音乐
<input type="checkbox" name="favorite" value="movie" checked />电影
<input type="checkbox" name="favorite" value="football" />足球
<input type="checkbox" name="favorite" value="basketball" />篮球
<br />
<label for="introduce">自我介绍:</label>
<br />
<textarea name="introduce" rows="4" cols="40" ></textarea>
<br />
<input type="checkbox" name="accept" value="ture" checked />接受协议
<br />
<br />
<input type="submit" value="submit" />
</fieldset>
</form>
</body>
</html>
注意:
标签中的name="xxx",用于后台从这个name中获取数据,后台通过request.getParameter("xxx");来获取该标签对应的value值;
type为date、email是html5的标签上
userinfo.jsp
<%@ page language="java" import="java.util.*, java.text.*" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>用户信息</title>
</head>
<body>
<jsp:useBean id="regUser" scope="session" class="entity.Users"></jsp:useBean>
<label>用户名:</label>
<br />
<jsp:getProperty property="username" name="regUser"/>
<br />
<label>密码:</label>
<br />
<jsp:getProperty property="password" name="regUser"/>
<br />
<label>电子邮箱:</label>
<br />
<jsp:getProperty property="email" name="regUser"/>
<br />
<label>性别:</label>
<br />
<jsp:getProperty property="gender" name="regUser"/>
<br />
<label>出生日期:</label>
<br />
<%
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String date = sdf.format(regUser.getBirthday());
%>
<%=date %>
<br />
<label>爱好:</label>
<br />
<%
String[] favorites = regUser.getFavorites();
for(String f:favorites)
{
%>
<%=f%>
<%
}
%>
<br />
<label>自我介绍:</label>
<br />
<jsp:getProperty property="introduce" name="regUser"/>
<br />
<label>接受条款:</label>
<br />
<jsp:getProperty property="accept" name="regUser"/>
<br />
</body>
</html>
注意:
java bean的使用<jsp:useBean id="regUser" scope="session" class="entity.Users"></jsp:useBean>
Users.java
package entity;
import java.util.Date;
//用户实体类
public class Users {
private String username;
private String password;
private String email;
private String gender;
private Date birthday;
private String[] favorites;
private String introduce;
private boolean accept;
public Users() {
}
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 getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getIntroduce() {
return introduce;
}
public void setIntroduce(String introduce) {
this.introduce = introduce;
}
public boolean isAccept() {
return accept;
}
public void setAccept(boolean accept) {
this.accept = accept;
}
public String[] getFavorites() {
return favorites;
}
public void setFavorites(String[] favorites) {
this.favorites = favorites;
}
}
RegServlet.java
package servlet;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import entity.Users;
/**
* Servlet implementation class RegServlet
*/
@WebServlet("/RegServlet")
public class RegServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RegServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see Servlet#init(ServletConfig)
*/
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
System.out.println("init...");
}
/**
* @see Servlet#destroy()
*/
public void destroy() {
// TODO Auto-generated method stub
}
/**
* @see Servlet#getServletConfig()
*/
public ServletConfig getServletConfig() {
// TODO Auto-generated method stub
System.out.println("getServletConfig...");
return null;
}
/**
* @see Servlet#getServletInfo()
*/
public String getServletInfo() {
// TODO Auto-generated method stub
System.out.println("getServletInfo...");
return null;
}
/* *//**
* @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
*//*
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("service...");
}*/
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//response.getWriter().append("Served at: ").append(request.getContextPath());
System.out.println("doGet...");
doPost(request,response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//doGet(request, response);
System.out.println("doPost...");
request.setCharacterEncoding("utf-8");
Users u = new Users();
String username,password,gender,email,introduce;
Date birthday;
String[] favorites;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try{
username = request.getParameter("username");
password = request.getParameter("password");
gender = request.getParameter("gender");
email = request.getParameter("email");
introduce = request.getParameter("introduce");
birthday = sdf.parse(request.getParameter("birthday"));
//用来获取多个复选按钮的值
favorites = request.getParameterValues("favorite");
u.setUsername(username);
u.setPassword(password);
u.setEmail(email);
u.setBirthday(birthday);
u.setGender(gender);
u.setIntroduce(introduce);
u.setFavorites(favorites);
u.setAccept(request.getParameter("accept").equals("true")?true:false);
//把注册成功的页面保存到session中
request.getSession().setAttribute("regUser", u);
//跳转到userinfo页面
request.getRequestDispatcher("../userinfo.jsp").forward(request, response);
}
catch(Exception ex){
ex.printStackTrace();
}
}
/**
* @see HttpServlet#doPut(HttpServletRequest, HttpServletResponse)
*/
protected void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doPut...");
}
/**
* @see HttpServlet#doDelete(HttpServletRequest, HttpServletResponse)
*/
protected void doDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doDelete...");
}
/**
* @see HttpServlet#doHead(HttpServletRequest, HttpServletResponse)
*/
protected void doHead(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doHead...");
}
/**
* @see HttpServlet#doOptions(HttpServletRequest, HttpServletResponse)
*/
protected void doOptions(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doOptions...");
}
/**
* @see HttpServlet#doTrace(HttpServletRequest, HttpServletResponse)
*/
protected void doTrace(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doTrace...");
}
}
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>ServletGetFormInfoDemo</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>RegServlet</servlet-name>
<servlet-class>servlet.RegServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RegServlet</servlet-name>
<url-pattern>/servlet/RegServlet</url-pattern>
</servlet-mapping>
</web-app>
测试
测试结果