如何确保用户注册信息非空且符合所有必要条件?

2026-04-16 16:061阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计669个文字,预计阅读时间需要3分钟。

如何确保用户注册信息非空且符合所有必要条件?

各个参数的非空校验,一个request的生命周期,正则表达式验证邮箱格式,C3P0数据库连接池进行数据存储,Servlet技术+package+cn.tedu.web;import+java.io.IOException;import+java.sql.Connection;

各个参数的非空校验,一个request的生命周期,正则表达式验证邮箱格式是否正确,c3p0数据库连接池进行数据的存储,servlet技术

package cn.tedu.web; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.mchange.v2.c3p0.ComboPooledDataSource; public class RegistServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //0.解决乱码 //>>请求参数乱码 request.setCharacterEncoding("utf-8"); //>>响应中文乱码 response.setContentType("text/html;charset=utf-8"); //1.接受表单数据 String username = request.getParameter("username"); String password = request.getParameter("password"); String password2 = request.getParameter("password2"); String nickname = request.getParameter("nickname"); String email = request.getParameter("email"); String valistr = request.getParameter("valistr"); //2.校验数据 //>非空校验 if(username == null || "".equals(username)){ request.setAttribute("msg", "用户名不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(password == null || "".equals(password)){ request.setAttribute("msg", "密码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(password2 == null || "".equals(password2)){ request.setAttribute("msg", "确认密码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(nickname == null || "".equals(nickname)){ request.setAttribute("msg", "昵称不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(email == null || "".equals(email)){ request.setAttribute("msg", "邮箱不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(valistr == null || "".equals(valistr)){ request.setAttribute("msg", "验证码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>两次密码是否一致校验 if(!password.equals(password2)){ request.setAttribute("msg", "两次密码不一致"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>邮箱格式 //abc123@163.com if(!email.matches("^\\w+@\\w+(\\.\\w+)+$")){ request.setAttribute("msg", "邮箱格式不正确"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>验证码是否正确校验 //TODO 验证码是否正确校验 //3.注册用户 -- 把数据保存到数据库 Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; ComboPooledDataSource pool = new ComboPooledDataSource(); try { conn = pool.getConnection(); //>用户名是否存在校验 ps = conn.prepareStatement("select * from user where username=?"); ps.setString(1, username); rs = ps.executeQuery(); if(rs.next()){ request.setAttribute("msg", "用户名已存在"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } ps = conn.prepareStatement("insert into user values(null, ? , ? ,? , ?)"); ps.setString(1, username); ps.setString(2, password); ps.setString(3, nickname); ps.setString(4, email); int rows = ps.executeUpdate(); if(rows<=0){ request.setAttribute("msg", "对不起注册失败"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //4.给出提示 response.getWriter().write("

恭喜您注册成功, 3秒之后跳转到首页....

"); response.setHeader("refresh", "3;url="+ request.getContextPath() +"/index.jsp"); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); }finally{ if(rs != null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ rs = null; } } if(ps != null){ try { ps.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ ps = null; } } if(conn != null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ conn = null; } } } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }

如何确保用户注册信息非空且符合所有必要条件?

本文共计669个文字,预计阅读时间需要3分钟。

如何确保用户注册信息非空且符合所有必要条件?

各个参数的非空校验,一个request的生命周期,正则表达式验证邮箱格式,C3P0数据库连接池进行数据存储,Servlet技术+package+cn.tedu.web;import+java.io.IOException;import+java.sql.Connection;

各个参数的非空校验,一个request的生命周期,正则表达式验证邮箱格式是否正确,c3p0数据库连接池进行数据的存储,servlet技术

package cn.tedu.web; import java.io.IOException; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.mchange.v2.c3p0.ComboPooledDataSource; public class RegistServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //0.解决乱码 //>>请求参数乱码 request.setCharacterEncoding("utf-8"); //>>响应中文乱码 response.setContentType("text/html;charset=utf-8"); //1.接受表单数据 String username = request.getParameter("username"); String password = request.getParameter("password"); String password2 = request.getParameter("password2"); String nickname = request.getParameter("nickname"); String email = request.getParameter("email"); String valistr = request.getParameter("valistr"); //2.校验数据 //>非空校验 if(username == null || "".equals(username)){ request.setAttribute("msg", "用户名不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(password == null || "".equals(password)){ request.setAttribute("msg", "密码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(password2 == null || "".equals(password2)){ request.setAttribute("msg", "确认密码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(nickname == null || "".equals(nickname)){ request.setAttribute("msg", "昵称不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(email == null || "".equals(email)){ request.setAttribute("msg", "邮箱不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } if(valistr == null || "".equals(valistr)){ request.setAttribute("msg", "验证码不能为空"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>两次密码是否一致校验 if(!password.equals(password2)){ request.setAttribute("msg", "两次密码不一致"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>邮箱格式 //abc123@163.com if(!email.matches("^\\w+@\\w+(\\.\\w+)+$")){ request.setAttribute("msg", "邮箱格式不正确"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //>验证码是否正确校验 //TODO 验证码是否正确校验 //3.注册用户 -- 把数据保存到数据库 Connection conn = null; PreparedStatement ps = null; ResultSet rs = null; ComboPooledDataSource pool = new ComboPooledDataSource(); try { conn = pool.getConnection(); //>用户名是否存在校验 ps = conn.prepareStatement("select * from user where username=?"); ps.setString(1, username); rs = ps.executeQuery(); if(rs.next()){ request.setAttribute("msg", "用户名已存在"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } ps = conn.prepareStatement("insert into user values(null, ? , ? ,? , ?)"); ps.setString(1, username); ps.setString(2, password); ps.setString(3, nickname); ps.setString(4, email); int rows = ps.executeUpdate(); if(rows<=0){ request.setAttribute("msg", "对不起注册失败"); request.getRequestDispatcher("/regist.jsp").forward(request, response); return; } //4.给出提示 response.getWriter().write("

恭喜您注册成功, 3秒之后跳转到首页....

"); response.setHeader("refresh", "3;url="+ request.getContextPath() +"/index.jsp"); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); }finally{ if(rs != null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ rs = null; } } if(ps != null){ try { ps.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ ps = null; } } if(conn != null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ conn = null; } } } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }

如何确保用户注册信息非空且符合所有必要条件?