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