Servlet获取表单数据

一 用户实体类
  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 &nbsp;
                                  < input type = "checkbox" name = "favorite" value = "music" > 音乐 &nbsp;
                                  < input type = "checkbox" name = "favorite" value = "movie" > 电影 &nbsp;
                                  < input type = "checkbox" name = "favorite" value = "internet" > 上网 &nbsp;
                                 </ 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 = "注册" /> &nbsp;&nbsp;
                                    < input type = "reset" value = "取消" /> &nbsp;&nbsp;
                                 </ 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" > &nbsp; < jsp:getProperty name = "regUser" property = "username" /></ td >
        </ tr >
        < tr >
          < td class = "title" > 密码: </ td >
          < td class = "content" > &nbsp; < jsp:getProperty name = "regUser" property = "mypassword" /></ td >
        </ tr >
        < tr >
          < td class = "title" > 性别: </ td >
          < td class = "content" > &nbsp; < jsp:getProperty name = "regUser" property = "gender" /></ td >
        </ tr >
        < tr >
          < td class = "title" > E-mail: </ td >
          < td class = "content" > &nbsp; < jsp:getProperty name = "regUser" property = "email" /></ td >
        </ tr >
        < tr >
          < td class = "title" > 出生日期: </ td >
          < td class = "content" > &nbsp;
            <%
               SimpleDateFormat sdf = new SimpleDateFormat( "yyyy年MM月dd日" );
               String date = sdf.format(regUser.getBirthday());
              
            %>
             <%= date %>
          </ td >
        </ tr >
        < tr >
          < td class = "title" > 爱好: </ td >
          < td class = "content" > &nbsp;
            <%
               String[] favorites = regUser.getFavorites();
               for (String f:favorites)
               {
            %>
                <%= f %> &nbsp;&nbsp;
            <%
               }
            %>
          </ td >
        </ tr >
        < tr >
          < td class = "title" > 自我介绍: </ td >
          < td class = "content" > &nbsp; < jsp:getProperty name = "regUser" property = "introduce" /></ td >
        </ tr >
        < tr >
          < td class = "title" > 是否介绍协议: </ td >
          < td class = "content" > &nbsp; < jsp:getProperty name = "regUser" property = "flag" /></ td >
        </ tr >
     </ table >
    </ center >
  </ body >
</ html >
 
五 测试效果

 

猜你喜欢

转载自cakin24.iteye.com/blog/2396268
今日推荐