下面是如何使用JQuery实现校验用户名

html:

用户名:
密码
邮箱
简介
--------------------- jsp里面使用jQuery function checkUserName() { //1. 获取输入框的内容 var name = $("#name").val();
		//2. 发送请求
		$.post("/day16/CheckUserNameServlet" , {name:name} , function(data , status){
			//alert(data);
			if(data == 1){//用户名存在
				//alert("用户名存在");
				$("#span01").html("<font color='red'>用户名已被注册</font>");
			}else{
				//alert("用户名可用");
				$("#span01").html("<font color='green'>用户名可以使用</font>");
			}
		} );
		//3. 输出响应的数据到页面上。
	}

servlet:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {

		request.setCharacterEncoding("UTF-8");
		
		//1. 检测是否存在
		String name = request.getParameter("name");
		System.out.println("name="+name);
		
		UserDao dao = new UserDaomImpl();
		boolean isExist = dao.checkUserName(name);
		
		//2.  通知页面,到底有还是没有。
		if(isExist){
			response.getWriter().println(1);  //存在用户名
		}else{
			response.getWriter().println(2); //不存在该用户名
		}
		
	} catch (SQLException e) {
		e.printStackTrace();
	}
}

Dao:用于判断用户
import java.sql.SQLException;

public interface UserDao {

/**
 * 用于检测用户名是否存在
 * @param username
 * @return true : 存在 ,false : 不存在
 */
boolean checkUserName(String username) throws SQLException;

}

DaoImpl:用于实现Dao里面的方法
public class UserDaomImpl implements UserDao{

		@Override
		public boolean checkUserName(String username) throws SQLException {
			QueryRunner runner = new QueryRunner(JDBCUtil02.getDataSource());
			
			String sql = "select count(*) from t_user where username =?";


			runner.query(sql, new  ScalarHandler(), username);

			Long result = (Long) runner.query(sql, new  ScalarHandler(), username); 
			return result > 0 ;
		}
	
	}

如有更多意见看法,欢迎各位提出见解。

猜你喜欢

转载自blog.csdn.net/hair_Lovepiaorou/article/details/89468102