引用:http://www.cnsdn.com.cn/blog/article.asp?id=2011
一个用jsp连接Access数据库的代码。
要正确的使用这段代码,你需要首先在Access数据库里创建一username表,表里面创建两个字符型的字段,字段名分别为:uid,pwd,然后插入几条测试数据。
欢迎各位提出改进的意见。
以下用两种方式来实现jsp连接access数据库。
第一种JSP形式。
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*"%> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <% /********************************* ********* JDBC_ODBC连接Access数据库,不需要设置数据源 // ******* 数据库连接代码 开始 ***** //异常处理语句 try { //以下几项请自行修改 String spath = "data/test.mdb";//Access 数据库路径 String dbpath = application.getRealPath(spath);//转化成物理路径 String dbname = ""; //Acvess 数据库用户名,没有则为空 String user = ""; //Access 数据库密码,没有则为空 //数据库连接字符串 String url ="jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+dbpath; //加载驱动程序 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //建立连接 Connection conn= DriverManager.getConnection(url); //创建语句对象 Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); // **** 数据库连接代码 结束 ****** //********* 测试数据代码开始 ****** //请在数据库中建立username表,表中建立两个字段uid和pwd,类型为文本型 String sql = "select * from username"; ResultSet rs = stmt.executeQuery(sql); while(rs.next()) { out.print("用户名:" + rs.getString("uid")); out.print(" 密码:" + rs.getString("pwd") + "<br>"); } out.print("<br>恭喜你!数据库连接成功!"); rs.close(); //关闭记录集对象 stmt.close(); //关闭语句对象 conn.close(); //关闭连接对象 }catch(Exception e){ out.print("数据库连接错误!,错误信息如下:<br>"); out.print(e.getMessage()); } //******* 测试数据代码结束 ******* %>
第二种,JavaBean的形式。
package conn; //导入包 import java.sql.*; //导入数据库操作的类 public class DBConnAccess //构造方法,初始化 { private Connection conn; //连接对象 private Statement stmt; //语句对象 private ResultSet rs; //结果集对象 private String accessdriver; //保存Access驱动程序字符串 private String accessURL; //保存Access连接字符串 public DBConnAccess() { //Access驱动程序 accessdriver = "sun.jdbc.odbc.JdbcOdbcDriver"; //连接字符串 accessURL = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="; conn = null; } //该方法从参数得到数据库路径,并加到连接字符串后面,然后再建立连接 public Connection getConnToAccess(String dbpath){ try{ accessURL=accessURL+dbpath; Class.forName(accessdriver); conn = DriverManager.getConnection(accessURL); }catch(Exception e){ System.out.println("操作数据库出错,请仔细检查"); System.err.println(e.getMessage()); } return conn; } //关闭数据库连接 public void close() { try{ //rs.close(); //stmt.close(); conn.close(); }catch(SQLException sqlexception){ sqlexception.printStackTrace(); } } }
调用方法如下: