




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WEBWEB系系统统分析分析与设计与设计1第第8 8章章 JDBCJDBC技术技术 第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计2教学目的教学目的 了解了解JDBC驱动程序的驱动程序的4种类型种类型 掌握掌握MySQL数据库的安装数据库的安装 掌握掌握MySQL-Front的安装和使用的安装和使用 掌握掌握JDBC操作数据库的三个主要步骤操作数据库的三个主要步骤第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计3主要内容主要内容 1、JDBC概述概述 2、MySQL数据库概述数据库概述 3、连接数据库的基本过程、连接数据库的基本过程第08章 连连接数数据库
2、库WEBWEB系统开发与设计系统开发与设计41 1、JDBCJDBC概述概述 1.1 JDBC工作原理工作原理 1.2 JDBC驱动程序类型驱动程序类型 1.3 JDBC API第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计5第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计61.1 JDBC1.1 JDBC工作原理工作原理 是实现是实现Java程序程序与与数据库系统数据库系统互连的互连的标准标准API,它允许,它允许发送发送SQL语句给数据库,并执行处理结果。语句给数据库,并执行处理结果。1、建立与、建立与DBMS的连接;的连接;2、向服务器提交要执行的、
3、向服务器提交要执行的SQL语句;语句;3、处理返回的结果集。、处理返回的结果集。第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计71.2 JDBC1.2 JDBC驱动程序类型驱动程序类型 分成分成4类类JDBC-ODBC 桥桥部分本地部分本地API,部分,部分Java驱动程序驱动程序JDBC网络纯网络纯Java驱动程序驱动程序本地协议纯本地协议纯Java驱动程序驱动程序第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计81.2.1 JDBC-ODBC1.2.1 JDBC-ODBC桥桥 为了支持更多数据库,为了支持更多数据库,Sun公司提供了公司提供了JDBC-
4、ODBC 桥。桥。 因为需要通过多层调用,因此因为需要通过多层调用,因此效率比较低效率比较低。 某些数据库只能通过这种方式来访问,如某些数据库只能通过这种方式来访问,如Access。 JDK1.1版本以后版本以后自带自带JDBC-ODBC 桥驱动程序桥驱动程序。Java应用程序应用程序JDBCAPIJDBC-ODBC桥桥ODBCAPIODBC层层数据数据库库将标准的将标准的JDBC调用调用转换转换为相应为相应的的ODBC调用调用第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计91.2.2 1.2.2 部分本地部分本地APIAPI部分部分JavaJava驱动程序驱动程序Java
5、应用程序应用程序JDBCAPIJDBC驱动驱动程序程序厂商提厂商提供的本供的本地地API数据数据库库将请求转换为厂将请求转换为厂商提供的本地商提供的本地API调用调用第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计101.2.3 JDBC1.2.3 JDBC网络纯网络纯JavaJava驱动程序驱动程序本地驱动程本地驱动程序序Java应用程序应用程序JDBCAPIJDBC驱动程序驱动程序数据数据库库应用服务应用服务器器将将JDBC调用发给调用发给应用服务器应用服务器中间件服务器中间件服务器第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计111.2.4 1.2.
6、4 本地协议纯本地协议纯JavaJava驱动程序驱动程序Java应用程序应用程序JDBCAPIJDBC驱动驱动程序程序数据数据库库第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计121.3 JDBC API1.3 JDBC API(JDBC Application Program InterfaceJDBC Application Program Interface) JDBC API是是Java应用应用与与DBMS进行交互的标准进行交互的标准API,包括各种基本接口。包括各种基本接口。 JDBC API包含两个包包含两个包核心核心API(java.sql):定义了访问数据库
7、的接口和:定义了访问数据库的接口和类,其中一些接口由驱动程序提供商来实现类,其中一些接口由驱动程序提供商来实现扩展扩展API(javax.sql) 应用程序主要通过应用程序主要通过核心核心API提供的接口提供的接口实现数据库连实现数据库连接和数据处理。接和数据处理。 其主要接口如下页所示。其主要接口如下页所示。 P175第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计13P175P175 JDBC API包含两个包包含两个包java.sql.Driver:用于建立访问:用于建立访问DB所用的所用的Connection对对象。象。java.sql.DriverManager:管
8、理:管理Driver对象,注册驱动对象,注册驱动程序、获得连接、向程序、获得连接、向DB发送信息。发送信息。java.sql.Connection:连接:连接DB和和Java应用程序之间的主应用程序之间的主要对象,创建所有的要对象,创建所有的Statement对象,执行对象,执行SQL。java.sql.Statement:执行:执行SQL语句使用语句使用java.sql.Resultset:查询数据库之后得到的结果集:查询数据库之后得到的结果集第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计142 2、MySQLMySQL数据库概述数据库概述 2.1 MySQL数据库的下载
9、和安装数据库的下载和安装 2.2 MySQL-Front的下载和安装的下载和安装 2.3 MySQL JDBC驱动驱动 第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计152.1MySQL2.1MySQL的下载及安装的下载及安装 (1)下载:)下载:http:/ ; downloads频道频道第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计16(2 2)安装)安装MySQLMySQL安装路径不允许有中文安装路径不允许有中文 执行执行 mysql-5.1.44-win32.msi,参照,参照书书P378页页的安装步的安装步骤,注意第(骤,注意第(5)()(6)
10、步骤(图)步骤(图A.5 和图和图A.6)的界面)的界面应为:应为:“ “现现在注在注册册MySMySQL”QL”选项选项不勾不勾选选第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计17 mysql select version(), current_date(); 查阅版本号和日查阅版本号和日期期第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计18加入要创建数据库加入要创建数据库db_Blogdb_Blogmysql create database db_Blog;mysql create database db_Blog;mysql use db_Blo
11、g; /mysql use db_Blog; /此此处处分分号号可省略可省略第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计192.2 2.2 安装安装MySQL-Front MySQL-Front u下载地址:下载地址:http:/ Front 5.1 Build 4.2 安装安装第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计20设置界面设置界面 【文件】【文件】【登录信息】【登录信息】 处进行设置处进行设置安装安装MySQLMySQL时设时设置的密码置的密码第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计212.3 MySQL JDB
12、C2.3 MySQL JDBC驱动驱动 http:/ 版本:版本:mysql-connector-java-5.1.12第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计223 3、连接数据库的基本过程、连接数据库的基本过程 利用利用JDBC访问数据库有统一的步骤。访问数据库有统一的步骤。先是调用先是调用Class类的类的forName()方法方法接着是调用接着是调用DriverManager类的类的getConnection()方法方法再是调用再是调用Connection对象的对象的createStatement()方法方法最后调用最后调用Statement对象的对象的exe
13、cuteQuery()方法方法1. Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);2. Connection conn=DriverManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;databasename=pubs,sa,123456);3. Statement stmt=conn.createStatement();4. ResultSet rs=stmt.executeQuery(select * from jobs);第08章 连连接数数
14、据库库WEBWEB系统开发与设计系统开发与设计23主要内容主要内容 3.1 引入引入java.sql包包 3.2 加载驱动程序加载驱动程序 3.3 建立到数据库的连接建立到数据库的连接 3.4 访问数据库访问数据库第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计243.1 3.1 引入引入java.sqljava.sql包包 java.sql.Connection java.sql.DriverManager java.sql.Statement java.sql.ResultSet java.sql.SQLException第08章 连连接数数据库库WEBWEB系统开发与设
15、计系统开发与设计253.2 3.2 加载驱动程序加载驱动程序(1) Driver接口接口java.sql.Driver是所有是所有JDBC驱动程序驱动程序需要实现的接口。此需要实现的接口。此接口是提供给接口是提供给DB厂商使用的。不同厂商使用的。不同DB厂商实现该接口的厂商实现该接口的类类名不同名不同。主要几种数据库的主要几种数据库的JDBC驱动类名驱动类名 com.microsoft.jdbc.sqlserver.SQLServerDriver com.microsoft.sqlserver.jdbc.SQLServerDriver oracle.jdbc.driver.OracleDriv
16、er com.mysql.jdbc.Driver第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计26在程序中在程序中不需要直接去访问不需要直接去访问这些实现了这些实现了Driver接口接口的类,而是由驱动程序管理器去调用这些驱动。的类,而是由驱动程序管理器去调用这些驱动。Java应用程序应用程序JDBC驱动程序管理器驱动程序管理器JDBC驱动程序驱动程序数数据据库库注册每个驱动程序注册每个驱动程序提供连接方法来建立数据库连接提供连接方法来建立数据库连接SQLServer2000SQL Server2005MySQLOracle第08章 连连接数数据库库WEBWEB系统开发与设
17、计系统开发与设计27(2)加载)加载JDBC驱动驱动 加载加载JDBC驱动驱动调用调用Class类的静态方法类的静态方法forName()Class.forName(“MyDriver”)对于对于MySQL数据库数据库Class.forName(“com.mysql.jdbc.Driver”)第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计283.3 3.3 建立到数据库的连接建立到数据库的连接 对数据库进行操作,要先创建连接,然后操作。对数据库进行操作,要先创建连接,然后操作。 连接数据库需要的信息连接数据库需要的信息(1)数据库的位置:数据库所在的主机和端口)数据库的位置
18、:数据库所在的主机和端口 MySQL:3306(2)数据库的信息:数据库的名字)数据库的信息:数据库的名字(3)用户信息:用户名和口令)用户信息:用户名和口令Connection con=DriverManager.getConnection(constr,user,pass);constr:连接字符串:连接字符串user:用户名:用户名pass:口令:口令String constr=jdbc:mysql:/localhost:3306/class;Connection conn=DriverManager.getConnection(constr,sa,123456);第08章 连连接数数据
19、库库WEBWEB系统开发与设计系统开发与设计293.4 3.4 访问数据库访问数据库 (1)创建语句对象)创建语句对象用来执行用来执行SQL语句语句Statement stmt=conn.createStatement(); (2)编写)编写SQL语句语句String sql=“select * from user where username=zhangsan and userpass=123”; (3)执行)执行SQL语句语句ResultSet rs=stmt.executeQuery(sql);第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计30 (4)ResultSe
20、t接口的常用方法接口的常用方法next():指针从当前位置移至下一行。:指针从当前位置移至下一行。ResultSet的的指针指针最初位于第一行之前最初位于第一行之前。调用之后即移至下一行。调用之后即移至下一行。若新的当前行若新的当前行有效有效,则返回,则返回true;否则,返回;否则,返回false。previous():指针移至上一行。若在有效行上为:指针移至上一行。若在有效行上为true,若不在结果集中,则为若不在结果集中,则为false。其它请参考书其它请参考书P176。第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计31实例实例用户登录用户登录 1、准备工作、准备工作
21、确保确保JDBC驱动已经放到对应应用程序的驱动已经放到对应应用程序的WebRoot/WEB-INF/lib下面下面 数据库已经创建数据库已经创建 2、加载、加载JDBC驱动驱动String classname=com.mysql.jdbc.Driver;tryClass.forName(classname);catch(ClassNotFoundException ce)throw new ServletException(加载数据库驱动失败加载数据库驱动失败);在在Servlet中,中,一般在一般在init()方法即加载方法即加载JDBC驱动。驱动。第08章 连连接数数据库库WEBWEB系统开发与设计系统开发与设计32 3、连接数据库、连接数据库 P179的表的表/用以建立数据库连接的必要信息用以建立数据库连接的必要信息String
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑劳务清包合同
- 园林绿化工程施工合同
- 展厅装修施工合同协议书
- 中介房屋买卖合同大全年
- 医疗健康领域医疗资源分布统计表
- 导购员聘用合同协议书
- 2025年潮州货运上岗证模拟考试0题
- 2025年部编版小学三年级下册课外阅读专项复习题(有答案)
- ic芯片购销合同范本
- 制动气室市场分析及竞争策略分析报告
- 一年级美术课后辅导方案-1
- 新法律援助基础知识讲座
- 《锻造安全生产》课件
- 小学数学1-6年级(含奥数)找规律专项及练习题附详细答案
- 《同济大学简介》课件
- 《建筑摄影5构》课件
- 机电安装工程质量控制
- 爱自己是终身浪漫的开始 心理课件
- 新房房屋买卖合同
- 地铁出入口雨棚施工工艺
- 人工智能引论智慧树知到课后章节答案2023年下浙江大学
评论
0/150
提交评论