jQuery+Ajax实现用户名重名实时检测
利用jQuery框架,封装了底层的Ajax异步技术,通过简单的方法调用即可实现。这篇博客是针对用户注册时出现的用户名重名问题的自动检测,利用的技术是Ajax异步传输。
register.jsp注册显示页面
<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>用户名: 密码: 性别: 男女 年龄: Email: //检查表单元素的值是否为空 functioncheck(){ varmyform=document.getElementById("myform"); for(vari=0;i
UserServlet逻辑处理Servlet类,用于对用户重名的判断以及响应处理结果的输出等。其中用于数据库检测重名的方法省略了(LoginDao.getInstance().checkUserName(userName.trim());//查找数据库是否存在该用户名)
packagecom.servlet.user; importjava.io.IOException; importjava.io.PrintWriter; importjavax.servlet.ServletException; importjavax.servlet.http.HttpServlet; importjavax.servlet.http.HttpServletRequest; importjavax.servlet.http.HttpServletResponse; importcom.dao.LoginDao; importcom.user.UserInfo; publicclassUserServletextendsHttpServlet{ publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse) throwsServletException,IOException{ response.setContentType("text/html;charset=UTF-8");//设置响应结果的格式为text/html,字符集为UTF-8 response.setCharacterEncoding("UTF-8");//设置响应结果的字符编码为UTF-8 //禁止缓存 response.setHeader("Cache-Control","no-store,no-cache,must-revalidate"); response.setHeader("Cache-Control","post-check=0,pre-check=0"); response.setDateHeader("Expires",0); response.setHeader("Pragma","no-cache"); PrintWriterout=response.getWriter(); out.println(""); //从httpRequest()方法中获得请求参数值 //通过httpRequest()方法封装的请求参数被编码为UTF-8格式,此处若想还原原来的编码格式,则需要通过UTF-8格式解码 StringuserName=request.getParameter("userName"); Stringresult=null; booleancheck=LoginDao.getInstance().checkUserName(userName.trim());//查找数据库是否存在该用户名 if(check){ result="该用户已经被使用"; }else{ result=" 该用户名可以使用"; } response.getWriter().print(result);//将结果输出到response响应流中 } @Override protectedvoiddoGet(HttpServletRequestreq,HttpServletResponseresp) throwsServletException,IOException{ this.doPost(req,resp); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。