JAVAWeb项目 微型商城项目-------(四)用户注册

1.创建vo类memder对象,添加DAOmemder增删改查实现类

        略

2.注册用户Servlet

        @WebServlet(name = "XXX", urlPatterns = "XXX*")

        注解方式配置Servlet

        1.web.xml文件配置

                    

        web-app标签 metadata-complete属性要是flase

   版本需要3.0及以上

 http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"

'

    修改自动加载版本

右键项目名称找到project Facets  在Dynamic Web Serivce 后面选择版本



2.servlet



/**
 * 
 * @ClassName:  MemberServletfront   
 * @Description:TODO(注册用户Servlet)   
 * @author: kiko 
 * @date:   2018年6月24日 下午1:18:12   
 *     
 * @Copyright: 2018
 */
@WebServlet(name = "MemberServletfront", urlPatterns = "/pages/MemberServletfront/*")
public class MemberServletfront extends HttpServlet {
  private static final long serialVersionUID = 1L;

  protected void doGet(HttpServletRequest request, HttpServletResponse response)
      throws ServletException, IOException {
    System.out.println("执行servlet程序");
    String path = "/pages/errors.jsp";
    // 获取地址 * 的部分转换为字符串
    String status = request.getRequestURI().substring(request.getRequestURI().lastIndexOf("/") + 1);
    System.out.println(status);
//如果字符串为null直接跳转到错误页面
 if (status != null) {  
 if ("regist".equals(status)) {
// 如果地址为"/pages/MemberServletfront/regist" 正确注册提交页面 执行regist(request)
//方法获得跳转网页地址(注册成功,失败,等) 
try {

          path = this.regist(request);
          System.out.println(path);
        } catch (Exception e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        }
      }
    }
 //  跳转网页
    request.getRequestDispatcher(path).forward(request, response);
  }

  /**
   * @throws Exception 
   * 
   * @Title: regist   
   * @Description: TODO(注册具体事务)   
   * @param: @param request
   * @param: @return      
   * @return: String   跳转的地址   
   * @throws
   */



  public String regist(HttpServletRequest request) throws Exception {
 
// 生成随机code码 注册码
    String code = UUID.randomUUID().toString();
//为了简单只取得中间4位
 code = code.substring(9, 13);
    // 保存提示信息的数据
    String msg = null;
    //保存跳转的地址
     String url = null;
    // 注册的vo类对象
    Member vo = new Member();
    // 获得注册数据 网页
    String mid = request.getParameter("mid");
    String password = request.getParameter("password");

    // 判断输入的信息不为空
    //用户名和密码都不为空
 if (VakidateUtil.VakidateNoEmpty(mid) && VakidateUtil.VakidateNoEmpty(password)) {
      // 封装数据
      vo.setMid(mid);
      // 设置密码 先用md5加密
   //为了安全密码必须加密在存入数据库   调用MD5工具类方法加蜜
 vo.setPassword(MD5Code.MD5Encode(password));
// 设置注册日期 为今天 vo.setRegdate(new Date()); vo.setPhoto("nophoto.jpg"); //注册设置默认图片 vo.setCode(code); //设置随机码 System.out.println(vo.getMid()); // 保存注册信息到数据库 if (!ServletFrontFactory.getIMemberServletfrontInstance().regist(vo)) { msg = "恭喜你 注册成功请激活"; //调用添加数据库方法 url = "index.jsp"; // 点击以下网页才能激活 System.out.println("发送激活邮件" + BasePath.getBasePath(request) + "/pages/member_active.jsp?mid=" + mid + "&code" + vo.getCode()); } else { // 重新 msg = "用户激活失败,请重新注册"; url = "/pages/member_regist.jsp"; } } else { msg = "输入的用户注册信息不正确,请重新输入"; url = "/pages/member_regist.jsp"; } request.setAttribute("msg", msg); request.setAttribute("url", url); // 返回提示页面 return "/pages/forward.jsp"; }}

2.注册页面

    只有注册用户名(mid),密码功能.....略


猜你喜欢

转载自blog.csdn.net/kikock/article/details/80805490