博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用AJAX实现用户名的唯一性校验(注册界面)-JAVA(新手)
阅读量:4982 次
发布时间:2019-06-12

本文共 2990 字,大约阅读时间需要 9 分钟。


  • (1)实现用户名的唯一性校验

 

所需要准备的:

  1. Servlet
  2. 注册界面的JSP
  3. 接口和实现类

 

 

所需要的接口和实现类:

接口: /*    *  用户注册    *  账号的唯一性校验,需要传参(username)    * */    boolean Username(String username);

实现类: @Override    public boolean Username(String username) {        String sql = "select * from user where username = ?";        List
> list = DBUtil.excuteQuery(sql, username); return list.size()>0; }

 

 

所需要的注册的JSP界面:

                

新用户注册

已有账号
发送验证码

个人理解:

    获取Username-使用Post提交-使用if、else判断-如果说状态码等于10010则意味着用户名相重,则提示用户名已经被使用。

                         反之,如果不等于10010则意味着用户名可以使用。


 

所需要的Servlet:

@WebServlet("/chexkusername")public class ChexkUsernameServlet extends HttpServlet {
  
  /*   *  注册时用户名的唯一性校验。   *   *  因为是判断用户名是否重复,则需要传递参数(user表里的username)   *  如果说重复则需要提示用户让用户进行更改。反之则提示用户可以使用。   *   *  所以首先,我们在Servlet中需要干的第一件事就是获取请求参数username   *  第二步就是调用DAO层检验用户名是否唯一。   *  第三步需要设置编码格式,因为是使用post请求,在浏览器中会出现乱码的现象,所以我们要设置一下编码格式。   *  第四步我们需要将检验结果返回给浏览器。   *  然后进行是否被使用的判断,还有可用和不可用的代码块和语句的提示。   *   *  在最后一步将Map转为JSON,因为使用JSON可以更方便的获取到值,而不用再使用共享参数、请求转发等操作。   * */
@Override    protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {        // 1、接收请求参数。        String username = req.getParameter("username");        // 2、调用DAO 检验用户名是否唯一。        IUserDAO dao = new UserDAOImpl();        boolean username1 = dao.Username(username);        // 3、设置编码格式。        resp.setContentType("text/json;charset=UTF-8");        // 4、将检验结果返回给浏览器(响应Ajax请求)        PrintWriter writer = resp.getWriter();        Map
Map = new HashMap<>(); //如果输入的用户名和数据库表内的一致则提示用户名已经被使用 if (username1){ //code、message为状态码 Map.put("code","10010"); Map.put("message","用户名已经被使用"); //否则则是不一致则提示登录成功。 } else{ Map.put("code","10086"); Map.put("message","恭喜,用户名可用"); } //转为JSOn String s = JSON.toJSONString(Map); writer.write(s); writer.close(); }}

个人理解:

    用户点击注册界面,在用户名一栏输入用户名,当鼠标的光标离开输入框时,就去检验用户的用户名是否有重复。

    这样可以节省资源,避免用户资源的浪费,因为以前所使用的方法,是在用户点击注册之后才去进行用户名的唯

    一性校验,如果错误,则需要返回一个新的界面并且提示用户名重复,即占用了又浪费了用户流量。

 

    所以选择AJAX——>AJAX,允许被浏览器和服务器通信而无需刷新当前页面的技术都被叫做AJAX。


 

转载于:https://www.cnblogs.com/lxr521/p/10765335.html

你可能感兴趣的文章
[算法]Evaluate Reverse Polish Notation
查看>>
go语言之进阶篇接口的定义和实现以及接口的继承
查看>>
SmartPhone手机网站的制作
查看>>
自适应全屏与居中算法
查看>>
Java、JSP与JavaScript的区别
查看>>
构建之法阅读笔记(一)
查看>>
帮助你设计的50个自由和新鲜的图标集
查看>>
Glusterfs[转]
查看>>
javascript缩写
查看>>
GA来源分析
查看>>
常用统计指标
查看>>
iOS设置圆角矩形和阴影效果
查看>>
【算法笔记】B1029 旧键盘
查看>>
c#中的ref、out、params参数
查看>>
linux下VNC的安装与使用
查看>>
java Condition条件变量的通俗易懂解释、基本使用及注意点
查看>>
Sample Join Analysis
查看>>
ligerUI利用a标签下载文件
查看>>
在博客园的第一篇文章,先简单自述一下吧
查看>>
深入了解 Dojo 的服务器推送技术
查看>>