前几天老师让作几个JSP连接数据库的例子,而且连接的数据库是Access数据库,对于这个数据库自己也不是太了解,后来了解到学习JDBC的时候,连接access是很方便的,很容易的,但是在连接的时候也出现了问题,但是还是解决了。接下来总结一下常用的几种连接方式。

例如有如下的Access数据库student,表basic,以及6条记录,现在通过几种方式在Jsp中将他们的数据显示出来。如图所示:

对于几种连接Access数据库的方式,基本上都是基于JDBC-ODBC方式的,当然也有纯JDBC驱动的方式。这里我暂时就不说了。对于这几种方式,除了取得连接之处不同外,其他的代码都是一样的。所以这里先写出取得连接的几种方式,然后再用完整的代码进行显示。

方式一:通过JDBC-ODBC方式桥连直接连接:

1、对于这种方式,首先要建立ODBC数据源,我的系统是Win7系统,所以依次选择“控制面板----管理工具----数据源(ODBC)”,打开数据源管理器,如图所示:

2、在“系统DSN”选项卡中,单击“添加”按钮,打开创建数据源对话框,选择Access数据库的驱动程序“Microsoft Access Driver(*.mdb)”如图所示:

3、单击完成按钮,出现如下对话框,在数据源名中输入数据源的名字“JDBC-ODBC”,单击选择按钮,选择要操作的数据库“student.mdb”,单击确定按钮完成数据源的配置。如图所示:

4、数据源配置好了,就可以写获取连接的代码了,如下所示:

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

String url = "jdbc:odbc:JDBC-ODBC";

Connection con = DriverManager.getConnection(url);

以上的三行代码就是通过JDBC-ODBC连接Access数据库的关键代码。这种方式连接可以很方便的记忆连接的url代码,这是很有用的。后面的代码就是正常写了。

方式二:通过数据库所在的绝对路径方式连接

上面说过这里的几种方式都是基于JDBC-ODBC方式。所以加载驱动的Class.forName()中的参数都是“sun.jdbc.odbc.JdbcOdbcDriver”。对于这种方式我将student.mdb文件放在了e盘的根目录下,在使用的时候,直接写上该数据库的绝对路径就行了。获取连接的代码如下所示:

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

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

Connection con = DriverManager.getConnection(url);

对于这种方式不用配置数据源,虽然代码比较多,但是很好理解的。也是很常用的。

方式三:通过请求来获取数据库的绝对路径方式连接

对于这种方式,我个人认为很适合在Java Web应用中使用,将做好的应用给别人,别人也可以使用。我将该数据库文件放在了Web应用的根路径下。那么动态的获取连接的代码如下所示:

String path = application.getRealPath("/index.jsp");

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

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

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

Connection con = DriverManager.getConnection(url);

以上便是三种方式获取连接。接下来便是显示的代码了。代码如下所示:

Access

学号 姓名 年龄 地址 语文 数学 英语

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

String url = "jdbc:odbc:JDBC-ODBC";

Connection con = DriverManager.getConnection(url);

Statement st = con.createStatement();

String sql = "select * from basic";

ResultSet rs = st.executeQuery(sql);

while(rs.next())

{

%>

}

rs.close();

st.close();

con.close();

%>

运行JSP结果如下所示:

当将连接改为第二种方式的时候还是好使的,JSP代码如下所示:

JDBC连接Access数据库的第二种方式

学号 姓名 年龄 地址 语文 数学 英语

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

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

Connection con = DriverManager.getConnection(url);

Statement st = con.createStatement();

String sql = "select * from basic";

ResultSet rs = st.executeQuery(sql);

while(rs.next())

{

%>

}

rs.close();

st.close();

con.close();

%>

运行JSP结果如下所示:

当将连接改为第三种方式的时候还是好使的,JSP代码如下所示:

pageEncoding="UTF-8"%>

JDBC连接Access数据库的第三种方式

学号 姓名 年龄 地址 语文 数学 英语

String path = application.getRealPath("/index.jsp");

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

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

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

Connection con = DriverManager.getConnection(url);

Statement st = con.createStatement();

String sql = "select * from basic";

ResultSet rs = st.executeQuery(sql);

while(rs.next())

{

%>

}

rs.close();

st.close();

con.close();

%>

运行JSP结果如下所示:

对于这种方式我的项目的目录结构如下所示:

从上述的三种方式可以知道,无论使用哪一种都是好使的。

html5链接access数据库,JDBC连接Access数据库的几种方式详解相关推荐

  1. java access jdbc_Java jdbc连接Access数据库的方法学习(ucanaccess驱动)

    我们如何使用java jdbc连接Access数据库并进行读写呢?这个只需要使用UcanaccessDriver这样的驱动就可以了,首先java连接Access数据库需要引入net相关的jar包,Ac ...

  2. java jdbc 链接pg_Java使用JDBC连接postgresql数据库示例

    本文实例讲述了Java使用JDBC连接postgresql数据库.分享给大家供大家参考,具体如下: package tool; import java.sql.Connection; import j ...

  3. jdbc连接oracle查询数据库,JDBC连接Oracle数据库,并操作数据库,查询表

    JDBC连接Oracle数据库 protected void doPost(HttpServletRequest request, HttpServletResponse response) thro ...

  4. python连接mysql三种方式_用 Python 连接 MySQL 的几种方式详解

    每个学 Python 的都有必要学好一门数据库,不管你是做数据分析,还是网络爬虫,Web 开发.亦或是机器学习,你都离不开要和数据库打交道,而 MySQL 又是最流行的一种数据库,这篇文章介绍 Pyt ...

  5. 多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP

    在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式. 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图. 从3张图里我们看到了几点 ...

  6. html的后代选择器,html5怎么使用后代选择器?html选择后代的两种方式详解!

    在项目开发的过程中,同一个文档中可能会用到很多相同的标签,也有可能用到很多相同的类名,这就导致 html 在开发中选择器不好使用的问题,如果全部使用 id 选择器又不符合语义化的效果.这时候,我们就可 ...

  7. mysql数据库与access数据库连接_JDBC连接Access数据库的几种方式

    JDBC 连接 Access 数据库的几种方式 前几天老师让作几个JSP连接数据库的例子,而且连接的数据库是Access数据库,对于这个数据库自己也不是太了解,后来了解到学习JDBC的时候,连接acc ...

  8. java jdbc 连接mysql数据库,Java 通过JDBC连接Mysql数据库

    JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

  9. mysql java驱动 ibm_Java 通过JDBC连接Mysql数据库

    JDBC(java Data Base Connectivity,Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口 ...

最新文章

  1. Openlayers下载与加载geoserver的wms服务显示地图
  2. BugkuCTF-reverse:入门逆向
  3. DataSet.Relations 属性
  4. 强大的导航网站,做设计必备!
  5. 第十四章 深度确定性策略梯度(Deep Deterministic Policy Gradient Algorithms,DDPG)-强化学习理论学习与代码实现(强化学习导论第二版)
  6. STM32串口通信UARTx
  7. 潜力环保类元宇宙项目地球超人解析
  8. 一篇讲完Java链表(单链表、循环链表和双向链表)
  9. 机器学习正则化线性回归(调参技巧(matlab))
  10. 同义词转换不再有效_中考英语丨初中英语句型转换大全
  11. 寒假每日一题——贝茜放慢脚步
  12. datamodeler mysql_Navicat Data Modeler功能简介
  13. 写代码时切换insert键,用来解决光标小黑块问题
  14. Scrum敏捷培训课堂小记
  15. Python双目相机计算三维坐标(使用opencv自带图片)
  16. 云产研见客户的行为分析
  17. 程序员才看得懂的祝福语(程序员送祝福啦)
  18. E.03.10 Coffee Drinking Tied to Lower Risk of Heart Failure
  19. 联想笔记本的window server R2系统安装、优化及相关软件安装全过程
  20. execution plan mysql_MySQL Execution Plan--合理利用隐式的业务逻辑

热门文章

  1. 数据结构实验一,第2题:基于顺序存储结构的图书信息表的排序
  2. 如何计算黄金分割比例
  3. IMS应用领域|IMS连接器系统使自动驾驶成为可能
  4. win10系统怎么开启sql服务器,win10如何启动sql数据库服务器
  5. 使用UltraEdit25.20.0.88进行Verilog语言编辑配置方式(详细)
  6. python3 + pymysql 创建数据库
  7. python机器学习开源代码_2016 年十大 Python 机器学习开源项目
  8. pyppeteer报错:NoneType‘ object has no attribute ‘goto‘
  9. 国网GIM设备三维模型要求细则 - 换流阀塔
  10. pip install 和conda install的区别是什么?