JDBC连接数据库

上传人:我*** 文档编号:134422420 上传时间:2020-06-05 格式:PPT 页数:23 大小:112KB
返回 下载 相关 举报
JDBC连接数据库_第1页
第1页 / 共23页
JDBC连接数据库_第2页
第2页 / 共23页
JDBC连接数据库_第3页
第3页 / 共23页
JDBC连接数据库_第4页
第4页 / 共23页
JDBC连接数据库_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《JDBC连接数据库》由会员分享,可在线阅读,更多相关《JDBC连接数据库(23页珍藏版)》请在金锄头文库上搜索。

1、第七章JDBC连接数据库 JDBC工作原理通过JDBC对数据库执行SQL语句基于数据源访问数据库高级开发技巧 本章主要内容 JDBC工作原理 通过JDBC对数据库执行SQL语句基于数据源访问数据库高级开发技巧 JDBC为多种关系数据库提供了统一访问方式 作为特定厂商数据库访问API的一种高级抽象 它主要包含一些通用的接口类 真正的数据库访问操作实现是由各自数据库厂商提供的 通常把厂商提供的特定于数据库的访问API称为数据库JDBC驱动程序 JDBC通过提供一个抽象的数据库接口 使得程序开发人员在编程时可以不用绑定在特定数据库厂商的API上 大大增加了应用程序的可移植性 在实际运行过程中程序代码

2、通过JDBC访问数据库时 仍旧需要调用特定于数据库的访问API JDBC访问数据库层次结构 创建数据库连接 分为以下几步 首先注册数据库驱动程序 然后根据具体的JDBCURL地址 调用DriverManager对象的getConnection 来获取一个代表数据库连接的java sql connectuion对象 JDBCURL的格式如下 jdbc 子协议 数据库定位器 MySQL数据库 jdbc mysql 机器名 数据库名Oracle数据库 jdbc oracle thin 机器名 端口名 数据库名 给定具体的JDBCURL 获取数据库连接的方法是在DriverManager对象上调用ge

3、tConnection 这种方法有两种形式 DriverManager getConnection url DriverManager getConnection url user password 其中第二种方式需要输入用户名和密码信息进行身份认证 程序7 1 test jsp连接Mysql数据库成功 数据库连接测试 JDBC工作原理通过JDBC对数据库执行SQL语句 基于数据源访问数据库高级开发技巧 java sql Statement对象代表一条发送到数据库执行的SQL语句 有三种Statement对象 Statement对象用于执行不带参数的简单SQL语句 PreparedStatem

4、ent对象用于执行带或不带参数的预编译SQL语句 CallableStatement对象用于执行对数据库存储过程的调用 注意 继承了Statement接口中所有方法的PreparedStatement接口也有自己的executeQuery executeUpdate和execute方法 Statement对象本身不包含SQL语句 因而必须给Statement execute方法提供SQL语句作为参数 PreparedStatement对象并不将SQL语句作为参数提供给这些方法 因为它们已经包含预编译SQL语句 CallableStatement对象继承这些方法的PreparedStatemen

5、t形式 对于这些方法的PreparedStatement或CallableStatement版本 使用查询参数将抛出SQLException PreparedStatement实例包含已编译的SQL语句 这也是将其命名冠以 Prepared 的原因 包含于PreparedStatement对象中的SQL语句可具有一个或多个IN参数 IN参数的值在SQL语句创建时未被指定 相反的 该语句为每个IN参数保留一个问号 作为占位符 每个问号的值必须在该语句执行之前通过适当的setXXX 方法来提供 由于PreparedStatement对象已预编译过 所以其执行速度要快于Statement对象 因此多

6、次执行的SQL语句经常创建为PreparedStatement对象 以提高效率 JDBC工作原理通过JDBC对数据库执行SQL语句基于数据源访问数据库 高级开发技巧 数据源是在JDBC2 0中引入的一个概念 在JDBC2 0扩展包中定义了javax sql DataSource接口来描述数据源的概念 如果用户希望建立一个数据库连接 通过查询在JNDI JavaNamingandDirectoryInterface 服务中的数据源 可以从数据源中获取相应的数据库连接 这样程序开发人员就只需要获取一个逻辑名称 而不是数据库登录的具体细节 这样代码的移植能力就更强 程序7 5 mysql servi

7、ce xml 片段 MySqlDSjdbc mysql localhost 3306 sampleorg gjt mm mysql Driverrootjboss jca service RARDeployment name JBossLocalTransactionJDBCWrapper try javax naming InitialContextctx newjavax naming InitialContext javax sql DataSourceds javax sql DataSource ctx lookup java MySqlDS conn ds getConnectio

8、n preparedStmt conn prepareStatement selectcustomerid address phonefromcustomerwherefirstnamelike 设置参数Stringparm request getParameter parm preparedStmt setString 1 parm 执行Sql语句sqlRst preparedStmt executeQuery 程序7 6 test2 jsp 片段 JDBC工作原理通过JDBC对数据库执行SQL语句基于数据源访问数据库高级开发技巧 BLOB字段的处理 执行Sql语句sqlRst Stmt e

9、xecuteQuery SQLString while sqlRst next java sql Blobblob sqlRst getBlob data byte ab blob getBytes 1 int blob length response setContentType image gif response reset op write ab op flush op close Stmt close conn close 程序7 7 ShowImage java 片段 分页显示代码片段 0 sqlRst absolute intPage 1 intPageSize 1 i 0 while i

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号