J2EE的ajax用户注册验证

来源:互联网 发布:三宅一生香水知乎 编辑:程序博客网 时间:2024/05/18 01:43
 
这个应用主要用在springside框架中的ajax用户注册验证,我这个菜鸟做的大家试试参考!!
1页面jsp script代码:
 
<script type="text/javascript">
    var xmlHttp;
 
 
 
    function createXMLHttpRequest() {
 
    if (window.ActiveXObject) {
 
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
 
    }
 
    else if (window.XMLHttpRequest) {
 
        xmlHttp = new XMLHttpRequest();
 
    }
 
    }
   
    function createQueryString() {
 
    var userid = document.getElementById("userid").value;
    var queryString = "userid=" + userid;
 
     
   
    return queryString ;
 
    }
   
   
    function doRequestUsingGET() {
    if(document.getElementById("userid").value==""){
       alert("用户名不能为空");
      
    }else{
    createXMLHttpRequest();
    var queryString = "<%=request.getContextPath()%>/pages/um/operInfo.do?method=checkuser&";
 
    queryString = queryString + createQueryString()
 
        + "&timeStamp=" + new Date().getTime();
 
    xmlHttp.onreadystatechange = handleStateChange;
 
    xmlHttp.open("GET", queryString, true);
 
    xmlHttp.send(null);
    }
    }
   
    function handleStateChange() {
 
    if(xmlHttp.readyState == 4) {
 
        if(xmlHttp.status == 200) {
 
            parseResults();
 
        }
 
    }
 
    }
 
 
 
    function parseResults() {
 
    var responseDiv = document.getElementById("serverResponse");
 
    if(responseDiv.hasChildNodes()) {
 
        responseDiv.removeChild(responseDiv.childNodes[0]);
 
    }
 
    var responseText = document.createTextNode(xmlHttp.responseText);
 
    responseDiv.appendChild(responseText);
 
    }
 
   
   
 
   
    </script>
 
 
2还要在页面添加一个按钮和一个div
 
<html:text property="userid" styleClass="text" />
<td width="8%">
<input type="button" value="检查用户" class="MyButton" onclick="doRequestUsingGET();"/>
</td>
<td width="10%" style="color: #FF0000" align="left"><div id="serverResponse"></div>      //当服务端返回值就在这里显示是否存在用户名 
</td>
 
3ACTION中写一个方法命名为checkuser,记得不要写actionforwad的方法!
/*
     * 验证用户是否存在
     */
    publicvoid checkuser(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response){
       String userid=request.getParameter("userid");
 
        response.setContentType("text/xml;charset=UTF-8");
        String responseText=null;
      
            try {
              PrintWriter out= response.getWriter();
              int Result=sysUserManager.findUserBy(userid.trim());
              switch(Result)
              {
              case 0:
                  responseText ="该用户名已经存在!";
                  break;
              case 1:
                  responseText ="用户名可以注册!";
                  break;
              }
               out.println(responseText);
               out.close();
           } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
           }
 
4 在业务层MANAGER类中 findUserBy ()方法
publicint findUserBy(String userid){
      
       SysUser user = null;
       try{
           user = this.get(SysUser.class,userid);
       }catch (Exception e){
          
           user = null;
       }
       if (user==null)
           return 1;
       else
           return 0;    
}