找不到适用于jdbc:ucanaccess://C:\ Users \ Asim Iqbal \ Documents \ PersonInfo.accdb的驱动程序 [英] No suitable driver found for jdbc:ucanaccess://C:\Users\Asim Iqbal\Documents\PersonInfo.accdb

查看:124
本文介绍了找不到适用于jdbc:ucanaccess://C:\ Users \ Asim Iqbal \ Documents \ PersonInfo.accdb的驱动程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我必须面对这个错误:

找不到适用于jdbc:ucanaccess://C:\ Users \ Asim的驱动程序 Iqbal \ Documents \ PersonInfo.accdb org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:555)

No suitable driver found for jdbc:ucanaccess://C:\Users\Asim Iqbal\Documents\PersonInfo.accdb org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:555)

在我的JSP项目中.但是当我分别运行PersonDAO.java时,它可以正常工作.但是,通过使用Bean,我必须面对这种类型的错误.这些文件如下.

in my JSP project. But when I run PersonDAO.java separately, it works properly. But, by using Bean I have to face this type of error. These files are as followed.

PersonDAO.java

PersonDAO.java

import java.util.*;

import java.sql.*;

import java.io.*;
public class PersonDAO implements Serializable  {
private PreparedStatement stmt;

public ArrayList pList;
String url="jdbc:ucanaccess://C:\\Users\\Asim Iqbal\\Documents\\PersonInfo.accdb";

Connection   conn = DriverManager.getConnection(url);

public PersonDAO() throws SQLException{

    establishConnection();
}
private void establishConnection() throws SQLException
{
    String url1="jdbc:ucanaccess://C:\\Users\\Asim Iqbal\\Documents\\PersonInfo.accdb";
    conn = DriverManager.getConnection(url1);
}

public ArrayList getPerson(String name) throws SQLException { 
    PersonInfo pInfo=new PersonInfo();

    pList=new ArrayList();

    String sql="SELECT * FROM Person WHERE name=?";

    stmt=conn.prepareStatement(sql);

    stmt.setString(1,name);

    ResultSet rs=stmt.executeQuery();
     String add,n;

     String p;

    while(rs.next()){

        n=rs.getString("Name");
        add=rs.getString("Address");

        p=rs.getString("PhoneNumber");

        pInfo.setName(n);

        pInfo.setAddress(add);

        pInfo.setpNumber(p);

        pList.add(pInfo);
    }
    return pList;

    }
 }

saveperson.jsp

saveperson.jsp

</head>
    <jsp:useBean id="pDAO" class="Person.PersonDAO" scope = "request" /> 

    <jsp:useBean id="personBean" class="Person.PersonInfo" scope="request"/> 

    <jsp:setProperty name="personBean" property="name" param="name"/>

    <jsp:setProperty name="personBean" property="address" param="address"/>

    <jsp:setProperty name="personBean" property="pNumber" param="pNumber"/>
    <%
     pDAO.setPerson(personBean);
    %>
    <center>

    <h1>You have successfully add the record!</h1>
    <h4>  
          <a href="index.html" > Add another Person Record </a> <br>
          <br><br>
          <a href="searchperson.jsp" > Search Person </a>    
      </h4> 
    </center>

请告诉我我在哪里做错了.

Please tell me where I am doing wrong..

推荐答案

您必须先将ucanaccess jar添加到类路径并调用Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");,然后再尝试打开连接(一次),以便DriverManager查找驱动程序有关该网址的信息,请参见此处.

You must add the ucanaccess jar to the classpath and call Class.forName("net.ucanaccess.jdbc.UcanaccessDriver"); before you try to open the connection (once is enough) for the DriverManager to find the driver with that url, see here.

这篇关于找不到适用于jdbc:ucanaccess://C:\ Users \ Asim Iqbal \ Documents \ PersonInfo.accdb的驱动程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆