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