JDBC-MYSQL数据库访问技术.ppt

上传人:豆**** 文档编号:24032802 上传时间:2022-07-03 格式:PPT 页数:31 大小:207KB
返回 下载 相关 举报
JDBC-MYSQL数据库访问技术.ppt_第1页
第1页 / 共31页
JDBC-MYSQL数据库访问技术.ppt_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《JDBC-MYSQL数据库访问技术.ppt》由会员分享,可在线阅读,更多相关《JDBC-MYSQL数据库访问技术.ppt(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、2什么是JDBC JDBC(Java DataBase Connectivity)是Java与数据库的接口规范 JDBC定义了一个支持标准SQL功能的通用底层的应用程序编程接口(API) 定义了若干Java中的类,表示数据库连接、SQL指令、结果集、数据库元数据等 mysql 分页: limit 2,20 oralce 子查询:ROWNUM3JDBC特性 独立于特定数据库 对硬件平台、操作系统异构性的支持 JDBC驱动程序管理器是内置的,驱动程序本身也可通过Web浏览器自动下载,无须安装、配置 在不同数据库功能模块层次上提供统一的用户界面,可以实现不同的数据库连接.41 、加载驱动程序(注册J

2、DBC驱动程序) Class.forName(driver);2、建立到指定数据库的连接. DriverManager.getConnection(url, username, userpass);3、提交数据库查询PreparedStatement ps 对象 (CURD)4、获取查询结果/执行查询 返回一个结果集对象 (表中的数据) ResultSet rs= ps.executeQuery();5连接(Connection) Connection 对象代表与数据库的连接 连接过程包括所执行的 SQL 语句和在该连接上所返回的结果 Connection conn = DriverManag

3、er.getConnection(url, username, userpass);6打开连接 与数据库建立连接的标准方法是调用 DriverManager.getConnection 方法 例子如下: String driver = org.gjt.mm.mysql.Driver;String url = jdbc:mysql:/127.0.0.1:3306/JJA171201;String username = root;String userpass = 123123;Class.forName(driver);Connection conn = DriverManager.getCon

4、nection(url, username, userpass);if (conn != null) System.out.println( 连接成功 + conn); else System.out.println(err);7打开连接例子private String url = jdbc:microsoft:sqlserver:/localhost:1433;DataBaseName=mydb;private String username = sa;private String password = sa; public void testJDBC() try Class.forName

5、(com.microsoft.jdbc.sqlserver.SQLServerDriver).newInstance();/第一中加载驱动的方法/DriverManager.registerDriver(new com.microsoft.jdbc.sqlserver.SQLServerDriver();/第二种为注册驱动的方法conn = DriverManager.getConnection(url, username, password);System.out.println(数据库连接成功); catch (Exception e) e.printStackTrace();案例代码 *

6、 直接使用工具去打开DB的连接 * 代码 封装,块化,组件化,框架化,应用化, * author Mr.zhuzxpublic class UtilsJDBC / 常量 static final 命名上是全大字的字母public static final String DRIVER = org.gjt.mm.mysql.Driver;public static final String URL = jdbc:mysql:/127.0.0.1:3306/JJA171201;public static final String USERNAME = root;public static final

7、 String PASSWORD = 123123;案例代码/* * 打开连接 */public static Connection getConn() Connection conn = null;try Class.forName(DRIVER);conn = DriverManager.getConnection(URL, USERNAME, PASSWORD); catch (Exception e) e.printStackTrace();System.out.println( conn :+ conn);return conn;案例代码/* * 关闭连接 * * param con

8、n * 我是需要关闭的对象 */public static void colseConn(Connection conn) try conn.close();conn = null;System.out.println( conn close. ); catch (Exception e) e.printStackTrace();11JDBC URL JDBC URL 提供了一种标识数据库的方法,可以使相应的驱动程序能识别该数据库并与之建立连接 JDBC URL 应允许驱动程序编程员将一切所需的信息编入其中,而无须要求用户去做任何系统管理工作 JDBC URL 应允许某种程度的间接性。也就是说

9、,JDBC URL 可指向逻辑主机或数据库名,而这种逻辑主机或数据库名将由网络命名系统动态地转换为实际的名称 12JDBC URL的标准语法 JDBC URL 的标准语法如下所示。它由三部分组成,各部分间用冒号分隔: jdbc: jdbc 协议。JDBC URL 中的协议总是 jdbc 驱动程序名或数据库连接机制的名称 一种标识数据库的方法 13JDBC URL 举例 Jdbc:oracle:thin:127.0.0.1:1521:edudb Jdbc:microsoft:sqlserver:/localhost:1433 Jdbc:microsoft:sqlserver:/localhost

10、:1433;DataBaseName=mydb14发送 SQL 语句 JDBC 提供了三个类,用于向数据库发送 SQL 语句 Statement PreparedStatement CallableStatement 15对象Statement 由Connection的方法 createStatement 所创建 Statement 对象用于发送简单的 SQL 语句 16对象PreparedStatement 由Connection的方法 prepareStatement 所创建 PreparedStatement 对象用于发送带有一个或多个输入参数的 SQL 语句 PreparedState

11、ment 的实例扩展了 Statement ,因此它们都包括了Statement 的方法 PreparedStatement 对象有可能比Statement 对象的效率更高,因为它已被预编译过并存放在那以供将来使用 17对象CallableStatement 由方法 prepareCall 所创建。CallableStatement 对象用于执行 SQL 储存程序 一组可通过名称来调用的SQL 语句 18事务 事务由一个或多个这样的语句组成:这些语句已被执行、完成并被提交或还原 当调用方法 commit 或 rollback 时,当前事务即告就结束,另一个事务随即开始 方法 commit 使

12、SQL 语句对数据库所做的任何更改成为永久性的,它还将释放事务持有的全部锁。而方法 rollback 将弃去那些更改 19事务隔离级别 必须有某种途径来管理两个事务同时对一个数据库进行操作时可能发生的冲突 五个隔离级别TRANSACTION_NONE TRANSACTION_READ_UNCOMMITTEDTRANSACTION_READ_COMMITTEDTRANSACTION_REPEATABLE_READTRANSACTION_SERIALIZABLE 使用Connection.setTransactionIsolation() 设置你想要的事物级别 20DriverManager Dr

13、iverManager 类是 JDBC 的管理层,作用于用户和驱动程序之间 跟踪可用的驱动程序,并在数据库和相应驱动程序之间建立连接21跟踪可用驱动程序 DriverManager 类包含一列 Driver 类,它们已通过调用方法DriverManager.registerDriver对自己进行了注册 所有 Driver 类都包含一个静态部分,它创建该类的实例,然后在加载该实例时 DriverManager 类进行注册 加载 Driver 类,然后自动在 DriverManager 中注册的方式Class.forName(acme.db.Driver); 22建立连接 加载 Driver 类并

14、在 DriverManager 类中注册后,它们即可用来与数据库建立连接 当调用 DriverManager.getConnection 方法发出连接请求时,DriverManager 将检查每个驱动程序,查看它是否可以建立连接 DriverManager 将使用它所找到的第一个可以成功连接到给定 URL 的驱动程序 Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); /加载驱动程序 String url = jdbc:odbc:fred; DriverManager.getConnection(url, userID, passwd); 23Statem

15、ent语句 创建 Statement 对象Statement stmt = con.createStatement(); 使用 Statement 对象执行语句executeQuery 用于产生单个结果集的语句 executeUpdate 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句 语句完成 连接处于自动提交模式连接处于非自动提交模式 关闭 Statement 对象 作为一种好的编程风格,应在不需要 Statement 对象时显式地关闭它们 24结果设置ResultSet ResultSet 包含符合 SQL 语句中条件的所有行,并且它

16、通过一套 get 方法提供了对这些行中数据的访问 例子java.sql.Statement stmt = conn.createStatement(); ResultSet r = stmt.executeQuery(SELECT a, b, c FROM Table1); while (r.next() int i = r.getInt(a); String s = r.getString(b); float f = r.getFloat(c); 25为什么使用连接池 可能发生的情况:每一个页面请求导致一次数据库访问 连接数据库不仅要开销一定的通讯和内存资源,还必须完成用户验证、安全上下文配置这类任务 成百上千个用户 如果某个基于数据库的Web应用只需建立一次初始连接,不同页面请求能够共享同一连接,就能获得显著的性能改善 26未使用连接池的情况27使用了连接池的情况28Tomcat连接池配置 Server.xml Web.xml29从连接池中获取连接DataSource ds = (DataSource)ctx.lookup( java:comp/env/jdbc/TestDB); if (ds != null) Connection conn = ds.getConnection(); 谢谢!

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁