验证用户名是否已经存在
reg.jsp注册页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
//获取XMLHttpRequest对象
function createXMLHttpRequest(){
try{
return new XMLHttpRequest();
}catch(e){
try{
return new ActiveXObjet("Msxml2.XMLHTTP");
}catch(e){
try{
return new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
throw e;
}
}
}
}
function run(){
var xhr = createXMLHttpRequest();
xhr.open("POST","/AJAX/reg",true);
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
var username = document.getElementById("nameId").value;
xhr.send("username="+username);
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
var text = xhr.responseText;
var uspan = document.getElementById("uspan");
uspan.innerHTML = text;
}
}
}
</script>
</head>
<body>
<form action="${pageContext.request.contextPath }/reg" method="post">
用户名:<input id="nameId" type="text" name="username"onblur="run()"/><span id="uspan"></span><br/>
密码:<input type="password" name="password" />
<input type="submit" value="注册"/>
</form>
</body>
</html>
RegServlet
package com.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.dao.UserDao;
import com.vo.User;
@WebServlet("/reg")
public class RegServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//接收数据
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
String username = request.getParameter("username");
String password = request.getParameter("password");
UserDao dao = new UserDao();
User u = dao.findByName(username);
if(u == null){
response.getWriter().write("<font color='green'>可以注册</font>");
}else{
response.getWriter().write("<font color='red'>用户名已存在</font>");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}