RegisterServlet.java
package com.neuedu.control;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Date;
import java.util.Enumeration;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.neuedu.model.CertType;
import com.neuedu.model.City;
import com.neuedu.model.Province;
import com.neuedu.model.User;
import com.neuedu.model.UserType;
import com.neuedu.service.UserService;
import com.neuedu.utils.TextUtils;
/**
* Servlet implementation class RegisterServlet
*/
public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public RegisterServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
//获取报头信息
String useragent=request.getHeader("user-agent");
System.out.println(useragent);
//一次性的获取报头信息
Enumeration names=request.getHeaderNames();
while(names.hasMoreElements())
{
String name=names.nextElement();
String value=request.getHeader(name);
System.out.println(name+" "+value);
}
// //获取请求方法
// String getPath=request.getMethod();
// System.out.println(getPath);
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
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
// response.setContentType("text/html;charset=UTF-8");
//response.setHeader("content-type","text/html;charset=UTF-8");
/* String username=request.getParameter("username");
System.out.println("用户名:"+username);
String password=request.getParameter("password");
System.out.println("密码:"+password);
String youname=request.getParameter("youname");
// System.out.println("真实名:"+youname);
System.out.println("真实名:"+youname);
String jsex=(String)request.getParameter("jsex");
System.out.println("性别:"+jsex);
String pro=request.getParameter("pro");
System.out.println("省份:"+pro);
String city=request.getParameter("city");
System.out.println("城市:"+city);
String zj=request.getParameter("zj");
System.out.println("证件:"+zj);
String zjnum=request.getParameter("zjnum");
System.out.println("证件号码:"+zjnum);
String birth=request.getParameter("birth");
System.out.println("生日:"+birth);
String lk=request.getParameter("lk");
System.out.println("旅客:"+lk);*/
//获取表单参数
User user=new User();
getParam(request,user);
//进行服务器校对
String result="";
String errorMsg=validate(user);
//判断校对结果
if(!"".equals(errorMsg))
{
result =errorMsg;
}else
{
User tempUser=new User();
tempUser.setUsername(user.getUsername());
ListresultList=UserService.getInstance().selectUser(tempUser);
if(resultList.size()>0)
{
result="用户名重复";
}else
{
UserService.getInstance().saveUser(user);
result="注册成功";
}
}
response.setContentType("text/html");
PrintWriter write =response.getWriter();
write.println("");
write.println("");
write.println("");
write.println("");
write.println(result);
write.println("");
write.println("");
}
private void getParam(HttpServletRequest request, User user) {
// TODO Auto-generated method stub
String username=request.getParameter("username");
String password=request.getParameter("password");
String conpassword=request.getParameter("conpassword");
String realname=request.getParameter("realname");
String jsex=(String)request.getParameter("jsex");
String pro=request.getParameter("pro");
String city=request.getParameter("city");
String certtype=request.getParameter("certtype");
String cert=request.getParameter("cert");
String birth=request.getParameter("birth");
String usertype=request.getParameter("usertype");
String comment=request.getParameter("comment");
//封装数据
user.setUsername(username);
user.setPassword(password);
user.setConpassword(conpassword);
user.setRealname(realname);
user.setSex(jsex);
City c=new City();
c.setCityID(city);
Province p=new Province();
p.setProvinceID(pro);
c.setFather(p);
user.setCity(c);
CertType ct =new CertType();
ct.setId(Integer.parseInt(certtype));
user.setCert_type(ct);
user.setCert(cert);
if("".equals(birth))
{
user.setBirthday(null);
}
else
{
user.setBirthday(Date.valueOf(birth));
}
UserType ut=new UserType();
ut.setId(Integer.parseInt(usertype));
user.setUser_type(ut);
user.setContent(comment);
user.setRule("1");
user.setStatus("1");
user.setLogin_ip(request.getRemoteAddr());
user.setImage_path("");
}
private String validate(User user)
{
StringBuffer error = new StringBuffer("");
//登录名是否为空
if(!TextUtils.isEmpty(user.getUsername()))
{
error.append("登录名不能为空");
error.append("
");
}
else
{
//matches方法,判断是否符合正则的规则
if(!user.getUsername().matches("[a-zA-Z0-9_]{6,30}"))
{
error.append("登录名不合法");
error.append("
");
}
}
//密码
if(!TextUtils.isEmpty(user.getPassword()))
{
error.append("密码不能为空");
error.append("
");
}else if(user.getPassword()!=null&&user.getPassword().length()<6)
{
error.append("密码长度不能小于6");
error.append("
");
}
else if(user.getPassword()!=null&&!user.getPassword().equals(user.getConpassword()))
{
error.append("密码和确认密码必须相同");
error.append("
");
}
//真实姓
if(!TextUtils.isEmpty(user.getRealname()))
{
error.append("真实姓名不能为空");
error.append("
");
}
//省份
// if("-1".equals(user.getCity().getFather().getProvinceID()))
// {
// error.append("省份不能为空");
// error.append("
");
// }
if("-1".equals(user.getCity().getFather().getProvinceID()))
{
error.append("省份不能为空");
error.append("
");
}
//城市
// if(user.getCity().getId()==-1)
// {
// error.append("城市不能为空");
// error.append("
");
// }
//证件类型
if(!TextUtils.isEmpty(user.getCert()))
{
error.append("证件号码不能为空");
error.append("
");
}else if(user.getCert_type().getId()==1)
{
if(!user.getCert().matches("(\\d{14}|\\d{17})(\\d|[xX])"))
{
error.append("证件类型格式不对");
error.append("
");
}
}
//证件号码
//出生日期
if(user.getBirthday()==null)
{
error.append("生日不能为空");
error.append("
");
}
String error1=error.toString();
return error1;
}
}
这是Java连接数据库所需要的文件信息!!!!