我写的一个类,用于连接到Access数据库的,你自己看吧!
import java.sql.*;/**
 * 得到与Access数据库的连接(Connection)的类
 */
public final class ConnectAccessDB
{
  private static final String DRIVER = "sun.jdbc.odbc.JdbcOdbcDriver";
  private static String fileName = ""; // 保留数据库文件路径
  private static String password = ""; // 保留数据库文件密码
  private static Connection conn = null;  private ConnectAccessDB() {
  }  public static Connection getConnection(String fileName) throws SQLException {
    return getConnection(fileName, "");
  }  /*
   * @param fileName Access数据库文件(.mdb文件)的完整路径 String
   * @param password Access数据库文件(.mdb文件)的密码 String
   */
  public static Connection getConnection(String fileName, String password) throws SQLException
  {
    if(fileName == null || password == null)
      throw new NullPointerException("getConnection方法参数为null");    String url = "jdbc:odbc:DRIVER=Microsoft Access Driver (*.mdb);DBQ="
               + fileName + ";PWD=" + password;
    try
    {
      if(conn != null && !conn.isClosed()) {
        if(ConnectAccessDB.fileName.equals(fileName) &&
           ConnectAccessDB.password.equals(password)) {
          return conn;
        }
        else {
          conn.close();
        }
      }      Class.forName(DRIVER);
      conn = DriverManager.getConnection(url);
    }
    catch(ClassNotFoundException cnfe) {
      conn = null;
      System.out.println("不能找到数据库驱动程序" + DRIVER);
    }
    catch (SQLException sqle)
    {
      conn = null;
      sqle.printStackTrace();
      throw new SQLException("连接Access数据库出错");
    }    ConnectAccessDB.fileName = fileName;
    ConnectAccessDB.password = password;
    return conn;
  }}

解决方案 »

  1.   

    天哪?难道是我的表达能力太差了?我问得明明是如何设置密码?通过java来设置密码,因为我不能要求客户去装access.连数据库不用你们教哇
      

  2.   

    对csdn彻底失望,请问哪里有更好的java论坛?
      

  3.   

    jdbc API中没有设置密码的事,你的需求本身就没道理。
    你不让客户装access,你连什么数据库?!你自己把设好密码的mdb文件发布过去不就得了,这又何必要用程序去设密码?!
    而且你发布你的应用时,不配置odbc就想连Access?!这种事,难道也想用java去做?!
      

  4.   

    客户端当然不需要装 access,
    不配置odbc也是可以的,只需要去下载jdbc driver for access就行了,jdbc-odbc桥性能差了点。
    我只是希望我的应用独立性能高一点。
    可能我的需求过分了,我想可以通过别的途径来解决这个问题。