《Java应用》-项目九+Java数据库连接技术_第1页
《Java应用》-项目九+Java数据库连接技术_第2页
《Java应用》-项目九+Java数据库连接技术_第3页
《Java应用》-项目九+Java数据库连接技术_第4页
《Java应用》-项目九+Java数据库连接技术_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

技能目标理解JDBC原理01.02.03.掌握JDBC连接数据库的步骤能通过纯Java方式连接数据库04.能通过纯Java方式连接数据库预备知识010203JDBC介绍JDBCAPI介绍JDBC访问数据库的步骤Applet类预备知识-01JDBC介绍

JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。Oracle公司提供了JDBC的接口规范——JDBCAPI,而数据库厂商或第三方中间件厂商根据该接口规范提供针对不同数据库的具体实现——JDBC驱动。预备知识-02JDBCAPI介绍JDBCAPI重要做三件事情:与数据库建立连接、发送SQL语句、处理结果。所使用到的主要接口和类如下:java.sgl.DriverManager类:根据数据库的不同,管理相应的JDBC驱动。java.sgl.Connection接口:负责连接数据库并担任传送数据的任务。java.sgl.Statement接口:由Connection产生、负责执行SQL语句。java.sgl.ResultSet接口:负责保存Statement执行后所产生的查询结果。

java.sgl.PreparedStatement接口:Statement的子接口,也由Connection产生,同样负责执行SQL语句。但与Statement接口相比,具有高安全性、高性能、高可读性和高可维护性的优点。预备知识-03JDBC访问数据库的步骤创建一个以JDBC连接数据库的程序,包含7个步骤:1、 加载JDBC驱动程序2、 提供JDBC连接的URL3、 创建数据库的连接4、 创建一个Statement5、 执行SQL语句6、 处理结果7、释放JDBC资源任务1使用纯Java方式连接数据库01任务需求任务1使用纯Java方式连接数据库纯Java驱动方式由JDBC驱动直接访问数据库,驱动程序完全用Java语言编写,运行速度快,而且具备了跨平台特点。但是由于技术资料的限制,这类JDBC驱动一般只能由数据库厂商自己提供,即这类JDBC只对应一种数据库,甚至只对应某个版本的数据库,一般数据库更换了,就需要更换JDBC驱动。任务:使用纯Java驱动方式进行数据库的连接。02任务实现任务1使用纯Java方式连接数据库第一步:将数据库驱动jar包引入Java项目。02任务实现任务1使用纯Java方式连接数据库第二步:编写连接数据库的Java程序。importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLException;publicclassTestJDBC1{ publicstaticvoidmain(String[]args){ Connectionconn=null; try{ Class.forName("com.mysql.jdbc.Driver"); conn=DriverManager.getConnection( "jdbc:mysql://localhost:3306/pet", "root","123456"); System.out.println("建立连接成功!"); }02任务实现任务1使用纯Java方式连接数据库catch(ClassNotFoundExceptione){ e.printStackTrace();}catch(SQLExceptione){ e.printStackTrace();}finally{ try{ if(null!=conn){ conn.close(); System.out.println("关闭连接成功!"); } }catch(SQLExceptione){ e.printStackTrace(); } } }}03任务解析任务1使用纯Java方式连接数据库本任务连接的MySQL数据库中建立了名为pet的数据库,数据库用户名为“root”,密码为“123456”,驱动程序包为:mysql.jar。任务2使用Statement向数据库中增加宠物狗狗的信息01任务需求任务2使用Statement向数据库中增加宠物狗狗的信息获取Connection对象后就可以进行各种数据库的操作了。此时需要使用Connection对象创建Statement对象。Statement对象用于将SQL语句发送到数据库中,或者理解为执行SQL语句。任务:添加一条狗狗信息到数据库。02任务实现任务2使用Statement向数据库中增加宠物狗狗的信息首先,需要在数据库中建立相应的数据表。本任务使用MySQL数据库,数据库名为pet,数据表名为dog。02任务实现任务2使用Statement向数据库中增加宠物狗狗的信息然后,可以编写java程序直接添加数据量。关键代码:Stringname="憨憨";Stringstrain="京巴";stmt=conn.createStatement();stmt.executeUpdate("insertintodog(name,strain) values('"+name+"','"+strain+"')");System.out.println("添加狗狗信息成功!");03任务解析任务2使用Statement向数据库中增加宠物狗狗的信息添加一条信息只要创建Statement对象,然后调用executeUpdate(Stringsql)方法即可。同时MySQL数据表的数据也添加一条记录03任务解析任务2使用Statement向数据库中增加宠物狗狗的信息Statement常用方法方法名说明ResultSetexecuteQuery(Stringsql)执行SQL查询并获取到ResultSet对象intexecuteUpdate(Stringsql)可以执行插入、删除、更新等操作,返回值是执行该操作所影响的行数booleanexecute(Stringsql)可以执行任意SQL语句,然后获得一个布尔值,表示是否返回ResultSet任务3使用Statement查询所有狗狗信息01任务需求任务3使用Statement查询所有狗狗信息查询数据表的信息,是非常常见的功能需求。查询并输出数据,首先还是创建Statement对象,然后调用excuteQuery(Stringsql)方法执行查询操作,返回值是结果集ResultSet对象。我们可以通过循环,显示结果集ResultSet对象中的所有数据。任务:查询并输出dog表中所有狗狗信息。02任务实现任务3使用Statement查询所有狗狗信息关键代码:ResultSetrs=null;stmt=conn.createStatement();rs=stmt.executeQuery("select*fromdog");System.out.println("查询数据成功!");while(rs.next()){ System.out.print(rs.getInt(1)+"\t"); System.out.print(rs.getString(2)+"\t"); System.out.println(rs.getString("strain"));}03任务解析任务3使用Statement查询所有狗狗信息本任务查询结果为ResultSet对象,它可以理解为所查询结果组成的一个二维表,每行代表一条记录,每列代表一个字段,并且存在一个光标,光标所指行为的当前行,只能对结果集的当前数据进行操作。光标初始位置上第一行之前(而不是指向第一行)。通过ResultSet的next()方法可以使光标向下移动一行,然后通过一系列getXxx方法实现对当前行各列数据的操作。使用ResultSet对象的next()方法后光标指向结果集的某一行,则返回true,否则返回false。如果光标已经指向结果集最后一行,再次调用next()方法,会指向最后一行的后面,此时返回false。任务4使用PreparedStatement更新狗狗信息01任务需求任务4使用PreparedStatement更新狗狗信息通过任务2和任务3的学习,我们发现在使用Statement接口方法进行SQL语句的拼接,繁琐麻烦、容易出错,而使用PreparedStatement会更灵活、更高效。任务:将数据表里的狗狗信息更新。02任务实现任务4使用PreparedStatement更新狗狗信息关键代码:PreparedStatementpstmt=null;Stringsql="updatedogsetname=?,strain=?whereid=?";pstmt=conn.prepareStatement(sql);pstmt.setString(1,"乖乖");pstmt.setString(2,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论