JSP连接Access数据库

  一.建立数据库及ODBC数据源

  1.建立jcc.mdb数据库及user表

  2.添加测试数据

  3.配置ODBC数据源

  二.在<%wwwroot%>/下,新建Access数据库连接文件Select.jsp

  Select.jsp源码如下:

  <%@page contentType="text/html;charset=gb2312"%>

  <%@page import="java.sql.*"%>

  <html>

  <body>

  <%

  try{

  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  }

  catch(ClassNotFoundException e){

  out.print(e);

  }

  try{

  String url = "jdbc:odbc:jcc";

  Connection conn = DriverManager.getConnection(url,"jcc","jsp.com.cn");

  Statement stmt = conn.createStatement();

  ResultSet rs = stmt.executeQuery("Select * FROM user");

  out.println("User-list"+"<br>");

  while(rs.next()){

  out.print(rs.getString(1)+" ");

  out.print(rs.getString(2)+"<br>");

  }

  rs.close();

  stmt.close();

  conn.close();

  }

  catch(Exception ex){

  out.print(ex);

  }

  %>

  </body>

  </html>

  四.运行http://localhost/Select.jsp,显示结果如下:

  User-list

  1 Corebit

  2 Ivan

  则表示数据库连接成功!恭喜!恭喜!

  否则请检查数据源相关设置,出错可能性比较高!

  附言:

  常有人问起,如何在不做ODBC数据源的情况下让JSP访问Access数据库,为解开这个迷团,特写以下连接代码,以供参考!其中,jcc.mdb与Select.jsp同位于<%wwwroot%>(根目录)下。

  改写后的Select.jsp源码如下:

  <%@page contentType="text/html;charset=gb2312"%>

  <%@page import="java.sql.*"%>

  <html>

  <body>

  <%

  try{

  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

  }

  catch(ClassNotFoundException e){

  out.print(e);

  }

  try{

  String strDirPath=application.getRealPath(request.getRequestURI());

  strDirPath=strDirPath.substring(0,strDirPath.lastIndexOf('\\'))+"\\";

  String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ="+strDirPath+"jcc.mdb";

  Connection conn = DriverManager.getConnection(url);

  Statement stmt = conn.createStatement();

  ResultSet rs = stmt.executeQuery("Select * FROM user");

  out.println("User-list"+"<br>");

  while(rs.next()){

  out.print(rs.getString(1)+" ");

  out.print(rs.getString(2)+"<br>");

  }

  rs.close();

  stmt.close();

  conn.close();

  }

  catch(Exception ex){

  out.print(ex);

  }

  %>

  </body>

  </html>

  运行结果应该与使用ODBC时的运行结果相同!

  *注:文件名Select.jsp区分大小写!

  希望本文能对你的JSP连接Access数据库有所帮助!

  ==========================================

  只能使用jdbc-odbc桥来连接

  想要设置odbc数据源

  然后连接

  String     dbdriver   =   "oracle.jdbc.driver.OracleDriver";

  String     dbname   =   "jdbc:oracle:thin:@192.168.0.101:1521:orcl";//根据你的情况修改

  String     user   =   "system";//用户名

  String   password   =   "manager";//密码

  Connection   conn   =   null;

  Statement   stmt   =   null;

  ResultSet   rs   =null;

  String   sql="select   *   from   表名";//根据实际情况修改

  try

  {

  Class.forName(dbdriver);

  }

  catch(java.lang.ClassNotFoundException   e){

  System.err.println("Class   access_dbconnect   not   fount!"+e.getMessage());

  }

  conn=DriverManager.getConnection(dbname,user,password);

  Statement   stmt=conn.createStatement();

  rs=stmt.executeQuery(sql);

  =========================================

  sDBDriver   =   "sun.jdbc.odbc.JdbcOdbcDriver";

  sConnStr   =   "jdbc:odbc:odbc名称";

  conn   =   null;

  rs   =   null;

  try

  {

  Class.forName(sDBDriver);

  }

  conn   =   DriverManager.getConnection(sConnStr);

  Statement   statement   =   conn.createStatement();

  rs   =   statement.executeQuery(s);

  你在odbc数据源中建一个access连接,然后把上面的代码中的odbc名称改成你的odbc数据源连接名称就可以了。