【文档说明】Java高级程序设计实战教程第八章-Java数据库编程.pptx,共(12)页,196.766 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-2294.html
以下为本文档部分文字说明:
Java高级程序设计第8章Java数据库编程8.1应用场景8.2相关知识8.3实施过程8.4拓展知识8.5拓展训练8.6课后小结8.7课后习题8.8课堂实训8.1应用场景大多数软件系统都需要处理非常庞大的数据,这些数据并不是使用数据或集合就能解决
的,这时就需要借助数据库系统。数据库系统由数据库、数据库管理系统、应用系统和数据库管理员组成。数据库管理系统简称DBMS。目前有许多DBMS产品,如DB2、Oracle、MicrosoftSQLServer、Sybase、Informix、MySQL等,Java程序需要
访问这些数据库,并对数据进行处理。8.2相关知识8.2.1数据库访问技术简介8.2.2JDBC连接数据库8.3.3执行SQL操作8.2.1数据库访问技术简介数据库中的数据存放在数据库文件中,我们要从数据库文件中获取数据,先要连接并登陆到存放数据库的服务器。一般来说,访问数
据库中的数据有两种方式:一是通过DBMS(DataBaseManagementSystem,数据库管理系统)提供的数据库操作工具来访问,如通过SQLServer2000的查询设计器来提交查询,或者通过SQLServer200
0的企业管理工具来访问。这种方式比较适合DBA对数据库进行管理;二是通过API(ApplicationProgrammingInterface,应用编程接口)来访问数据库,这种方式适合在应用程序中访问数据库。
在数据库发展的初期,各个开发商为自己的数据库设计了各自不同的DBMS,因此不同类型的数据库之间数据交换非常困难。为了解决这个问题,Microsoft提出了ODBC(OpenDataBaseConnectivity,开放数据库互连)技术,试图建立一种统一的应用程序访问数据
库接口,使开发人员无需了解程序内部结构就可以访问数据库。JDBC(JavaDataBaseConnectivity,Jjava数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一
种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。JDBC并不能直接访问数据库,需要借助于数据库厂商提供的JDBC驱动程序。JDBC中常用的类和接口可用于我们编程开发,利用这些类和接口可以
方便的经行数据访问和处理。这些类和接口都位于java.sal包中。8.2.2JDBC连接数据库JDBC简介之前我们介绍的数据库访问技术都是Microsoft提出的,主要用于Windows平台上Microsoft开发环境下的数据库连接和操作。而JDBC(JavaDataBaseConnectivit
y,Java数据库连接)是Java语言中用来规范客户端程序如何让来访问数据库的应用程序接口。JDBC是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC保留ODBC的基本设计
功能,在Web和Internet应用程序中的作用于ODBC在Windows系列平台应用程序中的作用类似,而且还具有对硬件平台、操作系统异构性的支持。8.3.3执行SQL操作JDBC访问数据库访问数据库就是从
数据库中提取数据或向数据库中保存数据,JDBC抽象了数据库进行交互的过程。首先在Java程序中要importjavasql.*语句导入java.sql包。当Java程序需要使用JDBC时,创建一个java.sql.connection对象指向数据库。其次,要创建一
个最基本的类是java.sql.statement,用于执行数据库操作。(1)加载连接数据库的驱动程序(2)建立连接(3)查询数据库(4)处理结果集(5)关闭查询语句及数据库连接8.3任务实施任务一编写程序实现对图书信息表的增
删改查操作任务需求:现有图书信息表bookinfo(序号,图书编号,图书名称,作者,出版社,单价,出版日期,ISBN,库存数量)。写程序实现对该表的增删改查操作。任务分析:1.连接MySQL使用的数据库连接包:mysql-connector-java-3.1.14-bin.jar2.
由于图书信息较多,我们编写Book.java来存放信息3.因为每次执行SQL操作都要连接数据库,所以我们编写DBManager.java来统一管理数据库的连接和关闭,然后把数据库连接操作统一写进BookDAO.java设计:类图如图8-3-3所示。8.4拓
展知识数据库连接池数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏
。这项技术能明显提高对数据库操作的性能。数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数制约。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最
大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。数据库连接池的最小连接数和最大连接数的设置要考虑到下列几个因素1.最小连接数2.最大连接数3.最小连接数与最大连接数差
距8.5拓展训练任务:实现批量插入数据和批量删除数据分析:当进行多条信息删除的时候,需要使用Jjava的事务处置机制对数据库进行删除,也就是说删除的时候如果选中的要删除的说有信息其中一条没有成功删除的话,那么就都不删除。设计:1.将要批量删除的图书的ID拼接成使用“,”隔开的字符串,使用BookI
nfoDAO中的deleteBookByID()方法进行删除。2.在BookInfoDAO.java中增加方法publicbooleandeleteBatch(Stringparam)。8.6课后小结1.JDBC。JDBC(Ja
vaDataBaseConnectivity,Java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为开发人员提供了一标准的API,据此可以构建更高级的工具和接口,使
数据库开发人员能够用纯Java的API编写数据库应用程序。2.JDBC连接数据库步骤。无论是普通Java程序、JavaWeb应用程序、EJB程序或是其他Java程序,使用JDBC操作数据库的步骤基本都是相对固定的。具体分为如下步骤:(1)注册驱动程序。即把驱动程序类加载到Java虚拟机中,使
得驱动管理器DriverManager能够找到该驱动程序,一般通过Class.forName()进行加载;(2)获取数据库连接。java.sql.Connection接口代表一个数据库连接,它通过驱动管理器DriverManager来建立连接
,并返回一个Connection接口的实现。同时需要指定连接URL、用户名和密码;(3)创建会话。JDBC的会话Statement主要是用于向数据库发送SQL命令,并返回执行结果,由Connectio
n生成;(4)执行SQL语句。会话创建好后程序员就可以执行具体的SQL语句了。一般分为查询和修改两种。查询主要是select语句,使用executeQuery()方法,它返回查询后的结果集;修改包括对数据库记录
的插入、修改、删除,使用executeUpdate()方法,它执行后返回的是影响到的记录数;(5)处理结果集。对于查询语句,返回的是结果集ResultSet,一般使用ResultSet.next()方法对结果集进行逐条处理;(6)关闭连接。按照“结果集=>会话=>连接”的顺序关闭数据库连
接8.7课后习题三、简答题1.简述java.sql包中主要类的作用。2.简单描述使用JDBC访问数据库的基本步骤。3.常用的数据库操作对象有哪些?这些对象分别用来做什么?4.ResultSet对象的作用是什么?该对象的常用方法有哪些?5.删除、增加、修改和查询记录的SQL语法是什么?其对
应的Statement方法又是什么?8.8课堂实训实训一、参照书中代码,完成图书管理系统。要求:使用MySQL数据库自建图书表,字段为图书编号、书名、作者、分类、数量等(可自行添加),编写程序用JDBC方式连接数据库完成以下功能:新增一条图书信息,如果已经存在,则数量+1删除一条图书信息,如果已经
存在且数量不为0,则数量-1,有根据图书编号、书名两种方式删除修改一条图书信息,图书编号不可修改查询图书信息,有根据图书编号、书名、作者、分类四种方式查询把查询结果用JTextFeild或者JTable显示实训二、请结合反射和注解方面的知识,编写通用的
程序,实现对任意对象的增删改查操作。