spring--mvc用戶注册用户名验重

          spring--mvc用戶注册用户名验重

    注册是验证用户名是否重复。post方法,当表单的用户名文本框失去焦点时,由ajax方法指定,进行@RequestMapping指定的url提交时调用的方法。

    dao映射代码。传入一个对象,用对象uname属性颜色

<!-- 用户重名查询 -->
    <select id="queryByUname" resultType="int" parameterType="com.bean.UsersBean">
        select
        count(*) from users where uname=#{uname}
    </select>

    service层代码:

/**
     * 判断用户名是否已经注册
     * 
     * @param user
     * @return
     */
    public int haveUsers(UsersBean user);

    controller代码:

    @Resource(name = "usersService")
    private IUsersService usersService;

    /**
     * 当表单的用户名文本框失去焦点时,由ajax方法指定,进行@RequestMapping指定的url提交时调用的方法
     * 
     * @param uesr
     * @return
     */
    @RequestMapping(value = "/isVaildUname", method = {
            RequestMethod.POST }, produces = "application/json;charset=UTF-8")
    public @ResponseBody int isVaildUname(String uname) {
        UsersBean user = new UsersBean();
        user.setUname(uname);
        return usersService.haveUsers(user);
    }

    页面jsp代码:

<form action="" method="post">
        用户名:<input type="text" name="uname" id="uname">
        <div id="div"></div>
        密码:<input type="password" name="upass"> 
        <input type="submit" value="Register">
    </form>

     jQuery代码:

$(function() {
        $("#uname").blur(function() {
            $.post("${path}/users/isVaildUname.action", {
                uname : $(this).val()
            }, function(data) {
                if (data > 0) {
                    $("#div").html("用户名已存在!");
                    $(this).select();
                } else {
                    $("#div").html("ok");
                }
            });
        });
    });

    完成后记得将jquery的代码引入jsp页面。

运行后!!

    

    多整理笔记。毕竟我这个人记性不太好。

Or

    

原文地址:https://www.cnblogs.com/meiLinYa/p/8793557.html