RegisterServlet

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连接数据库所需要的文件信息!!!!


你可能感兴趣的:(Java,Source)