a1187822886 2015-07-08 13:33 采纳率: 0%
浏览 1988

怎么用servlet获取oracle数据库信息后传递到jquery的ajax上进行验证

 package com.ibm.ajax.app1.entity;

public class WebUser {

        private String uname;
        public WebUser(String uname){
            this.uname=uname;
        }
        public String getUname() {
            return uname;
        }
        public void setUname(String uname) {
            this.uname = uname;
        }


}

package com.ibm.ajax.app1.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.List;
import java.util.Vector;

import com.ibm.ajax.app1.entity.WebUser;

public class WebUserDao {


    public List<WebUser> queryList() throws Exception{
        String username="gdx";
        String password="wazzh";
        String url="jdbc:oracle:thin:@//localhost:1521/orcl";
        String driver="oracle.jdbc.driver.OracleDriver";
        List<WebUser> lists=new Vector<WebUser>();
        Class.forName(driver);
        Connection conn=DriverManager.getConnection(url, username, password);
        Statement stmt =conn.createStatement();
        ResultSet rs=stmt.executeQuery("select UNAME from webUser");
        while(rs.next()){
            WebUser webuser=new WebUser(rs.getString("UNAME"));
            lists.add(webuser);
        }
        return lists;
    }
}



package com.ibm.ajax.app1.service.impl;

import java.util.List;

import com.ibm.ajax.app1.dao.WebUserDao;
import com.ibm.ajax.app1.entity.WebUser;
import com.ibm.ajax.app1.service.IWebUserService;

public class WebUserServiceImpl implements IWebUserService {
    private WebUserDao webuserdao= new WebUserDao();
    @Override
    public List<WebUser> getWebUserList() throws Exception {
        List<WebUser> lists= webuserdao.queryList();
        return lists;
    }

}


package com.ibm.ajax.app1.service;

import java.util.List;

import com.ibm.ajax.app1.entity.WebUser;

public interface IWebUserService {
    //获取我建立的实体对象WebUser的list表
    public List<WebUser> getWebUserList() throws Exception;
}




package com.ibm.ajax.app1.servlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.ibm.ajax.app1.entity.WebUser;
import com.ibm.ajax.app1.service.IWebUserService;
import com.ibm.ajax.app1.service.impl.WebUserServiceImpl;

/**
 * Servlet implementation class ValiateUserNameServlet
 */
public class ValiateUserNameServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    private IWebUserService webuserservice;
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        webuserservice = new WebUserServiceImpl();
        try{
            List<WebUser> userNames=webuserservice.getWebUserList();
            System.out.println(userNames);
            //这之上的是写的从数据库调取的语句
            String userName=request.getParameter("userName");
            String result=null;

            if(userNames.contains(userName) ){
                result="<font color='red'>该用户已存在</font>";
            }
            else{
                result="<font color='green'>该用户不存在</font>";
            }
            System.out.println("sdf");
            response.setContentType("text/html ; charset=UTF-8");
            response.setCharacterEncoding("UTF-8");
            response.getWriter().print(result);
        }
        catch(Exception ex){
            System.out.println(ex);
        }


    }

}



<%@ 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" src="${pageContext.request.contextPath }/scripts/jquery-1.7.2.js "></script>
<script type="text/javascript">
$(function(){
    $(":input[name='username']").change(function(){

        var val=$(this).val();
        val=$.trim(val);
        if(val!=" "){
            var url="${pageContext.request.contextPath }/valiateUserName";
            var args={"userName":val,"time":new Date()};
        $.post(url,args,function(data){

            $("#message").html(data);

        });
        }
    });


})
</script>
</head>
<body>
    <form action="" method="post">
     UserName:<input type="text" name="username" />

     <div id="message"></div>

    <input type="submit" value="Submit" />

    </form>
</body>
</html>

  • 写回答

2条回答

  • threenewbee 2015-07-08 14:42
    关注

    你的代码和你描述的不同,是你的客户端js通过ajax去验证你的用户名是否存在,而你的服务器端调用oracle数据库返回结果。
    你应该一步一步调试,先调试你的服务器,看看它查询数据库是否正确。
    然后调试你的ajax,请求的url,得到的数据、返回的结果是否正确。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!