java web mysql开发_java web 数据库开发1

一个完整的数据库部署架构通常由客户端和服务器端两部分组成。客户端封装数据库请求将其发送给服务器端,服务器端执行完毕将其及结果返回给服务器端。

以mysql为例

16917cc8b068344fb6712a0953992a9d.png

介绍java应用程序对数据库的访问

JDBC意义:应用程序通过调用统一接口实现对任意数据库的访问,为我们屏蔽了客户端与服务器端交互协议的实现细节。

对java而言,JDBC是一个类库,对数据库而言,JDBC是接口规范。

296872c9bffa2a2a6ae943ab3140a7ef.png

有了JDBC,应用程序变得更加简单,提高了程序开发的效率,使java web面向不同的数据库时,具有跨平台性,基于JDBC之上,我们可以开发功能更强大的框架。

JDBC体系架构图

8dcc91c1b5c97ba4dfcb073302ec7544.png

JDBC从体系架构来说,分为两层:

上层API:与我们编写的java web程序进行通信

下层数据库驱动层:和具体的数据库进行连接,一般由各个数据库厂商提供

在使用JDBC之前,我们先准备一个mysql数据库的后端实例,java应用程序实现读取人名

db4a3059329256c07eba2c7dc62575be.png

JDBC API 涉及的几个重要的java类:

1.Driver &DriverManager

Driver实际上是一个接口,定义了各个驱动程序必须要实现的功能,是驱动程序的抽象。通过操作Driver接口,即可实现对各个驱动程序的操作。

DriverManager是Driver的管理类,用户通过class.forname的方式,向DriverManager注册一个驱动程序,然后DriverManager通过getConnection方法,调用该驱动程序,建立到后端数据库的物理链接。

Connection对象代表java应用程序对后端数据库的一条物理链接。

913bb36b8019ea285f31b7ad36941803.png

Connection对象创建一个或多个Statement对象

Statement对象:是一个sql容器,容器中存放sql语句,执行更新查询删除操作,

458891612b18a19d8d9a9815fa361109.png

通过Statement对象的executeQuery方法执行一个数据库查询得到数据库查询结果的一个集合,集合以ResultSet对象表示。

通过Statement对象的execute和executeUpdate语句删除和更新,返回的是INT值的对象,代表操作影响了多少条数据库记录。

a297cc01ce8baacbd8ffd335100c43e9.png

介绍一下ResultSet对象:

代表了sql查询的结果,关系型数据库本质上是一个二元表,ResultSet对象实际上也是行和列组成的二元表。

344c4101584df715f5208419faf5cb0e.png

分别是下一行,前一行,定位到某一行,第一行前,最后一行后

调整到行后需对应到列:

52fe81f8a6c12822c0f6f9eae8118ac9.png

列名或列序号(从0开始排序)

2337548172053e11285ed7d36fe98044.png

操作过程中可能会抛出异常,sqlException进行处理

getConnection(DB_URL,UDER,PASS) 有三个参数.

229db3094abd5d145b99e74cfdf64f6b.png

679581fd23af8c697a9718b9b7699c1a.png

构建Java Web程序

包括五个步骤

1.javaManger注册一个驱动程序

2.通过getConnection方法建立一个到后端数据库的链接

3.通过向Statement容器中放置SQL语句完成SQL语句的执行

4.ResultSet对象确定行和列,获取某行某列对应的值

5.清理资源

7137d364734e9be605a8eccd5f987cd0.png

待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值