`
woshixushigang
  • 浏览: 564467 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

简单的servlet注册例子

阅读更多

package ch14.Servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.*;
import javax.servlet.http.*;
import ch14.JavaBean.User;
import ch14.JavaBean.DB_User;
import ch14.JavaBean.MD5_Encoding;

/***
 * 
 * @author qq
 *
 * 注册处理页面
 */

public class RegProcessServlet extends javax.servlet.http.HttpServlet 
  implements javax.servlet.Servlet {

//构造函数
public RegProcessServlet() {
super();
}

//服务器端的验证、提交处理
protected void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html; charset=gb2312");
//创建MD5加密类
MD5_Encoding md5=new MD5_Encoding();
String errorMsg = "";

// 必须填写的项目
String username = request.getParameter("username");
String pwd = request.getParameter("pwd");
String enpwd=md5.getMD5ofStr(pwd);
String confpwd = request.getParameter("confpwd");
String email = request.getParameter("email");
//判断两次输入的密码是否一致
if(!pwd.equals(confpwd)){
errorMsg = "密码不一致!";
request.setAttribute("errorMsg", errorMsg);
try {
//转发至注册错误页面
request.getRequestDispatcher("./reg_failure.jsp").forward(request, response);

catch(Throwable t) {
//写异常日志
getServletContext().log(t.getMessage());
}
}

  // 验证验证码输入的正确性
String random = request.getParameter("random");
String realrand = request.getSession().getAttribute("random").toString();
if (!random.equals(realrand)){
errorMsg = "验证码不正确!";
request.setAttribute("errorMsg", errorMsg);
try {
  //转发至注册错误页面
request.getRequestDispatcher("./reg_failure.jsp").forward(request, response);
} catch(Throwable t) {
//写异常日志
getServletContext().log(t.getMessage());
}
}

// 非必须填写的项目
String realname = request.getParameter("realname");
String gender = request.getParameter("gender");
String phone = request.getParameter("phone");
String question = request.getParameter("question");
String answer = request.getParameter("answer");
String page=request.getParameter("mypage");
String[] temp = request.getParameterValues("hobbies");
String hobby = "";
//处理个人兴趣爱好
if (temp != null) {
for (int i = 0; i < temp.length ; i++) {
hobby += temp[i];
}
}

String selfintro = request.getParameter("selfintro");

try {
  //创建一个用户表数据库读写类  
DB_User userdb=new DB_User();
User user=userdb.get(username);

if (user != null) {
// 如果记录集为非空,表明有相匹配的用户名,注册失败:
errorMsg = "已经存在相同的用户名,请更换一个新用户名";

request.setAttribute("errorMsg", errorMsg);

try {
//转发至注册错误页面 
request.getRequestDispatcher("./reg_failure.jsp").forward(request, response);

catch (Throwable t) {
  //写异常日志
getServletContext().log(t.getMessage());
}
} else {
user=new User();
user.setUsername(username);
user.setPassword(enpwd);
user.setEmail(email);
user.setRealname(realname);
user.setGender(Integer.parseInt(gender));
user.setQuestion(question);
user.setAnswer(answer);
user.setPage(page);
user.setPhone(phone);
user.setHobbies(hobby);
user.setSelfintro(selfintro);
System.out.println("sdfdsf");
PrintWriter out=response.getWriter();
out.print("www");
//写入数据库
int i=userdb.add(user);  
// 注册成功
request.setAttribute("user", user);



}

catch (Exception e) {
e.printStackTrace();
}
}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics