标签:mysql hibernate struts spring 项目实战
我们之前完成了用户管理列表的增删改查以及头像上传,之后又使用POI技术完成了用户列表信息的Excel导入和Excel文件导出工作。接下来我们来编写与账号有关的业务。<tr>
    <td class="tdBg" width="200px">帐号:</td>
    <td><s:textfield id="account" name="user.account" onchange="doverify()"/></td>
</tr>
相应的js方法:
<script type="text/javascript">
	//校验账号唯一
	function doverify(){
		//1.获取账号
		var account=$("#account").val();
		if(account!=""){
			//2.校验get/post/getJson/ajax 
			$.ajax({
				url:"${basePath}tax/user_verifyAccount.action",
				data:{"user.account":account},
				trpe:"post",
				success:function(msg){
					if("true"!=msg){
						//账号已经存在
						alert("账号已经存在,请使用其它账号!");
						//定焦
    						$("#account").focus();
					}
				}
			});
		}
	}
</script>//检验用户账号唯一
public void verifyAccount(){
	try {
		//1.获取账号
		if (user != null && StringUtils.isNotBlank(user.getAccount())) {
			//2.根据账号到数据库中校验是否存在该账号对应的用户
			List<User> list = userService.findUserByAccountAndId(user.getId(), user.getAccount());
			String strResult = "true";
			if (list != null && list.size() > 0) {
				//说明该账号已经存在
				strResult = "false";
			}
			//输出
			HttpServletResponse response = ServletActionContext
					.getResponse();
			response.setContentType("text/html");
			ServletOutputStream outputStream = response.getOutputStream();
			outputStream.write(strResult.getBytes());
			outputStream.close();
		}
	} catch (Exception e) {
		e.printStackTrace();
	}
	
}
@Override
public List<User> findUserByAccountAndId(String id, String account) {
	return userDao.findUserByAccountAndId(id,account);
}@Override
public List<User> findUserByAccountAndId(String id, String account) {
	String hql="FROM User WHERE account = ?";
	if(StringUtils.isNoneBlank(id)){
		hql+=" AND id != ?";
	}
	Query query=getSession().createQuery(hql);
	query.setParameter(0, account);
	if(StringUtils.isNoneBlank(id)){
		query.setParameter(1, id);
	}
	return query.list();
}
<input type="submit" class="btnB2" value="保存" onclick="return doSubmit()"/>
<script type="text/javascript">
	var vResult=false;
	
	//校验账号唯一
	function doverify(){
		//1.获取账号
		var account=$("#account").val();
		if(account!=""){
			//2.校验get/post/getJson/ajax 
			$.ajax({
				url:"${basePath}tax/user_verifyAccount.action",
				data:{"user.account":account},
				trpe:"post",
				async:false,//非异步
				success:function(msg){
					if("true"!=msg){
						//账号已经存在
						alert("账号已经存在,请使用其它账号!");
						//定焦
						$("#account").focus();
					}else{
						vResult=true;
					}
				}
			});
		}
	}
	//提交表单
	function doSubmit(){
		var name=$("#name");
		if(name.val()==""){
			alert("用户名不能为空!");
			name.focus();
			return false;
		}
		
		var password=$("#password");
		if(password.val()==""){
			alert("密码不能为空!");
			password.focus();
			return false;
		}
		//账号校验
		doverify();
		if(vResult){
			//允许提交表单
	    		return true;
    		}else{
    			return false;
    		}
	}
</script><tr>
    <td class="tdBg" width="200px">用户名:</td>
    <td><s:textfield id="name" name="user.name"/> </td>
</tr>
<tr>
    <td class="tdBg" width="200px">帐号:</td>
    <td><s:textfield id="account" name="user.account" onchange="doverify()"/></td>
</tr>
<tr>
    <td class="tdBg" width="200px">密码:</td>
    <td><s:textfield id="password" name="user.password"/></td>
</tr><input type="submit" class="btnB2" value="保存" onclick="return doSubmit()"/>
js方法(我们检测除了自己之外还有没有人使用这个账号):
<script type="text/javascript">
	var vResult = false;
	//校验帐号唯一
	function doverify(){
		//1、获取帐号
		var account = $("#account").val();
		if(account != ""){
			//2、校验 
			$.ajax({
				url:"${basePath}tax/user_verifyAccount.action",
				data: {"user.account": account,"user.id": "${user.id}"},
				type: "post",
				async: false,//非异步
				success: function(msg){
					if("true" != msg){
						//帐号已经存在
						alert("帐号已经存在。请使用其它帐号!");
						//定焦
						$("#account").focus();
						vResult = false;
					} else {
						vResult = true;
					}
				}
			});
		}
	}
	//提交表单
	function doSubmit(){
		var name = $("#name");
		if(name.val() == ""){
			alert("用户名不能为空!");
			name.focus();
			return false;
		}
		var password = $("#password");
		if(password.val() == ""){
			alert("密码不能为空!");
			password.focus();
			return false;
		}
		//帐号校验
		doverify();
		if(vResult){
 		return true;
		}else{
			return false;
		}
	}
</script>至此我们的所有校验工作已经完成。
转载请注明出处:http://blog.csdn.net/acmman/article/details/49420837
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:mysql hibernate struts spring 项目实战
原文地址:http://blog.csdn.net/acmman/article/details/49420837