一 用户实体类
package
entity;
import
java.util.Date;
//用户实体类
public
class
Users {
private
String
username
;
//用户名
private
String
mypassword
;
//密码
private
String
email
;
//电子邮箱
private
String
gender
;
//性别
private
Date
birthday
;
//出生日期
private
String[]
favorites
;
//爱好
private
String
introduce
;
//自我介绍
private
boolean
flag
;
//是否接受协议
public
Users()
{
}
public
String getUsername() {
return
username
;
}
public
void
setUsername(String username) {
this
.
username
= username;
}
public
String getMypassword() {
return
mypassword
;
}
public
void
setMypassword(String mypassword) {
this
.
mypassword
= mypassword;
}
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[] getFavorites() {
return
favorites
;
}
public
void
setFavorites(String[] favorites) {
this
.
favorites
= favorites;
}
public
String getIntroduce() {
return
introduce
;
}
public
void
setIntroduce(String introduce) {
this
.
introduce
= introduce;
}
public
boolean
isFlag() {
return
flag
;
}
public
void
setFlag(
boolean
flag) {
this
.
flag
= flag;
}
}
二 Servlet类
package servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import entity.Users;
public class RegServlet extends HttpServlet {
/**
* Constructor of the object.
*/
public RegServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request,response);
}
/**
* The doPost method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
Users u = new Users();
String username,mypassword,gender,email,introduce,isAccept;
Date birthday;
String[] favorites;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try
{
username = request.getParameter("username");
mypassword = request.getParameter("mypassword");
gender = request.getParameter("gender");
email = request.getParameter("email");
introduce = request.getParameter("introduce");
birthday = sdf.parse(request.getParameter("birthday"));
if(request.getParameterValues("isAccpet")!=null)
{
isAccept = request.getParameter("isAccept");
}
else
{
isAccept = "false";
}
//用来获取多个复选按钮的值
favorites = request.getParameterValues("favorite");
u.setUsername(username);
u.setMypassword(mypassword);
u.setGender(gender);
u.setEmail(email);
u.setFavorites(favorites);
u.setIntroduce(introduce);
if(isAccept.equals("true"))
{
u.setFlag(true);
}
else
{
u.setFlag(false);
}
u.setBirthday(birthday);
//把注册成功的用户对象保存在session中
request.getSession().setAttribute("regUser", u);
//跳转到注册成功页面
request.getRequestDispatcher("../userinfo.jsp").forward(request,response);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}
三 reg.jsp
<%@
page
language
=
"java"
import
=
"java.util.*"
contentType
=
"text/html; charset=utf-8"
%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+
"://"
+request.getServerName()+
":"
+request.getServerPort()+path+
"/"
;
%>
<!
DOCTYPE
HTML
PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN">
<
html
>
<
head
>
<
base
href
=
"
<%=
basePath
%>
"
>
<
title
>
My JSP 'reg.jsp' starting page
</
title
>
<
meta
http-equiv
=
"pragma"
content
=
"no-cache"
>
<
meta
http-equiv
=
"cache-control"
content
=
"no-cache"
>
<
meta
http-equiv
=
"expires"
content
=
"0"
>
<
meta
http-equiv
=
"keywords"
content
=
"keyword1,keyword2,keyword3"
>
<
meta
http-equiv
=
"description"
content
=
"This is my page"
>
<!--
<link
rel
="
stylesheet
" type="text/
css
"
href
="styles.css">
-->
<
style
type
=
"text/css"
>
.label
{
width
:
20%
}
.controler
{
width
:
80%
}
</
style
>
<
script
type
=
"text/javascript"
src
=
"js/Calendar3.js"
></
script
>
</
head
>
<
body
>
<
h1
>
用户注册
</
h1
>
<
hr
>
<
form
name
=
"regForm"
action
=
"servlet/RegServlet"
method
=
"post"
>
<
table
border
=
"0"
width
=
"800"
cellspacing
=
"0"
cellpadding
=
"0"
>
<
tr
>
<
td
class
=
"lalel"
>
用户名:
</
td
>
<
td
class
=
"controler"
><
input
type
=
"text"
name
=
"username"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
密码:
</
td
>
<
td
class
=
"controler"
><
input
type
=
"password"
name
=
"mypassword"
></
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
确认密码:
</
td
>
<
td
class
=
"controler"
><
input
type
=
"password"
name
=
"confirmpass"
></
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
电子邮箱:
</
td
>
<
td
class
=
"controler"
><
input
type
=
"text"
name
=
"email"
></
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
性别:
</
td
>
<
td
class
=
"controler"
><
input
type
=
"radio"
name
=
"gender"
checked
=
"checked"
value
=
"Male"
>
男
<
input
type
=
"radio"
name
=
"gender"
value
=
"Female"
>
女
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
出生日期:
</
td
>
<
td
class
=
"controler"
>
<
input
name
=
"birthday"
type
=
"text"
id
=
"control_date"
size
=
"10"
maxlength
=
"10"
onclick
=
"new Calendar().show(this);"
readonly
=
"readonly"
/>
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
爱好:
</
td
>
<
td
class
=
"controler"
>
<
input
type
=
"checkbox"
name
=
"favorite"
value
=
"nba"
>
NBA
<
input
type
=
"checkbox"
name
=
"favorite"
value
=
"music"
>
音乐
<
input
type
=
"checkbox"
name
=
"favorite"
value
=
"movie"
>
电影
<
input
type
=
"checkbox"
name
=
"favorite"
value
=
"internet"
>
上网
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
自我介绍:
</
td
>
<
td
class
=
"controler"
>
<
textarea
name
=
"introduce"
rows
=
"10"
cols
=
"40"
></
textarea
>
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"label"
>
接受协议:
</
td
>
<
td
class
=
"controler"
>
<
input
type
=
"checkbox"
name
=
"isAccept"
value
=
"true"
>
是否接受霸王条款
</
td
>
</
tr
>
<
tr
>
<
td
colspan
=
"2"
align
=
"center"
>
<
input
type
=
"submit"
value
=
"注册"
/>
<
input
type
=
"reset"
value
=
"取消"
/>
</
td
>
</
tr
>
</
table
>
</
form
>
</
body
>
</
html
>
四 userinfo.jsp
<%@
page
language
=
"java"
import
=
"java.util.*,java.text.*"
contentType
=
"text/html; charset=utf-8"
%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+
"://"
+request.getServerName()+
":"
+request.getServerPort()+path+
"/"
;
%>
<!
DOCTYPE
HTML
PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN">
<
html
>
<
head
>
<
base
href
=
"
<%=
basePath
%>
"
>
<
title
>
My JSP 'userinfo.jsp' starting page
</
title
>
<
meta
http-equiv
=
"pragma"
content
=
"no-cache"
>
<
meta
http-equiv
=
"cache-control"
content
=
"no-cache"
>
<
meta
http-equiv
=
"expires"
content
=
"0"
>
<
meta
http-equiv
=
"keywords"
content
=
"keyword1,keyword2,keyword3"
>
<
meta
http-equiv
=
"description"
content
=
"This is my page"
>
<!--
<link
rel
="
stylesheet
" type="text/
css
"
href
="styles.css">
-->
<
style
type
=
"text/css"
>
.title
{
width
:
30%
;
background-color
:
#CCC
;
font-weight
:
bold
;
}
.content
{
width
:
70%
;
background-color
:
#CBCFE5
;
}
</
style
>
</
head
>
<
body
>
<
h1
>
用户信息
</
h1
>
<
hr
>
<
center
>
<
jsp:useBean
id
=
"regUser"
class
=
"entity.Users"
scope
=
"session"
/>
<
table
width
=
"600"
cellpadding
=
"0"
cellspacing
=
"0"
border
=
"1"
>
<
tr
>
<
td
class
=
"title"
>
用户名:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"username"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
密码:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"mypassword"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
性别:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"gender"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
E-mail:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"email"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
出生日期:
</
td
>
<
td
class
=
"content"
>
<%
SimpleDateFormat sdf =
new
SimpleDateFormat(
"yyyy年MM月dd日"
);
String date = sdf.format(regUser.getBirthday());
%>
<%=
date
%>
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
爱好:
</
td
>
<
td
class
=
"content"
>
<%
String[] favorites = regUser.getFavorites();
for
(String f:favorites)
{
%>
<%=
f
%>
<%
}
%>
</
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
自我介绍:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"introduce"
/></
td
>
</
tr
>
<
tr
>
<
td
class
=
"title"
>
是否介绍协议:
</
td
>
<
td
class
=
"content"
>
<
jsp:getProperty
name
=
"regUser"
property
=
"flag"
/></
td
>
</
tr
>
</
table
>
</
center
>
</
body
>
</
html
>
五 测试效果