JDBC第二天~JDBC之 DAO(Data Access Object)

简介: JDBC第二天~JDBC之 DAO(Data Access Object)

JDBC第二天~JDBC之 DAO(Data Access Object)

 

 

一、DAO(Data Access Object)是一个数据访问接口,顾名思义就是与数据库打交道,封装了数据的增删改查(CRUD)操作

夹在逻辑与数据库资源中间

 

1,DAO诞生的背景:以前我们是把数据库的操作代码编写到客户端里:

① 跟业务代码混杂在一起;

② 而且每次操作数据库时都需要重复书写代码。

 

2,解决:封装思想(联想到集合—将数据存储到内存,集合中封装了增删改查的操作)


4.png

5.png


3,DAO封装了数据的增删改操作,数据访问接口。

举例save()方法的设计:void save(String name, int age);

当需要保存的数据过多时,此时save方法的参数就很多,解决方法----封装思想


6.png7.png


 4,DAO设计规范:


7.png


5,开发步骤:【记得准备工作是拷贝java驱动jar包】

1):先建立一张表,存储信息:t_student;

2) :建立domain包和domain类:Student;

3):建立dao包和dao接口:IStudentDAO;

4):建立dom.impl包和dao实现类:StudentDAOImpl;

5):根据DAO接口创建DAO测试类:StudentDAOTest;

6):编写dao实现类[StudentDAOImpl]中每一个DAO方法的实现;

7):每编些一个DAO方法的实现,就测试该功能是否正确;


8.png

✿ 配置文件:xml适合有层次结构的配置;而properties就只要符合键值对存储即可
方式一:配置文件.properties 建立在src目录下(这样的话,配置文件就跟java代码 在一起了,不好)
方式二:再新建一个Source Folder文件(resources),再在下面建立.properties文件
□ Source Folder图标:放到该文件下面的直接编译成 .classpath 下面【默认classpath是bin下】,  则配置资源(.properties文件)编译到 classpath路径【bin目录下】,通过classLoader读取


6,PreparedStatement 和Statement 都可以表示语句对象:

PreparedStatement 相对于Statement的优势(通过对比,PreparedStatement更加优秀,以后就使用它即可)

1):拼接SQL上,操作更加简单

2):性能会更加高效,但是取决于数据库服务器是否支持。【Mysql不支持,Oracle支持

3) :安全性能更高,防止SQL注入(举例登录操作)。

目录
相关文章
|
4月前
|
druid Java 数据库连接
SpringBoot原理分析 | Spring Data整合:JDBC、Druid、Mybatis
SpringBoot原理分析 | Spring Data整合:JDBC、Druid、Mybatis
65 0
|
6月前
|
存储 JavaScript 前端开发
什么是 Google Tag Manager 的 Data Layer Object?
什么是 Google Tag Manager 的 Data Layer Object?
54 0
|
7月前
|
SQL Java 关系型数据库
[Mysql]JDBC篇, DAO, DBUtils, 批处理, 数据库池
面向接口编程是一种抽象的, 高效的编程思想 (就像Java里面的多态的思想. 解耦合) 解耦合 : 降低程序的耦合度(乐高坏了只需要换一个零件, 不香?), 提高程序的扩展力(比如多态) SUN公司写了一个接口 各大厂商对这个接口进行实现 这个接口实现了"多态"的编程思想 面向接口编程的程序员只需要调用JDBC即可 底层的实现是厂商写的代码, 程序员也不用去关心 厂商写的实现接口的.class文件, 也是驱动(Driver) 数据库驱动都是以.jar包的形式存在, .jar包当中有很多.class文件, 它们实现了JDBC接口
|
8月前
|
SQL 安全 Java
JDBC之DAO层封装思想超详解(下)
JDBC之DAO层封装思想超详解(下)
|
8月前
|
Java 关系型数据库 MySQL
JDBC之DAO层封装思想超详解(中3)
JDBC之DAO层封装思想超详解(中3)
|
8月前
|
SQL 数据可视化 Java
JDBC之DAO层封装思想超详解(上)
JDBC之DAO层封装思想超详解(上)
|
11月前
|
Java 数据库连接
【JavaWeb】一篇文章复习JDBC、DAO及相关实现类(二)
【JavaWeb】一篇文章复习JDBC、DAO及相关实现类(二)
|
11月前
|
SQL 存储 Java
【JavaWeb】一篇文章复习JDBC、DAO及相关实现类(一)
【JavaWeb】一篇文章复习JDBC、DAO及相关实现类(一)
|
Java 数据库连接 数据库
|
SQL 监控 druid
Spring 全家桶之 Spring Boot 2.6.4(四)- Data Access(Part A JDBC)
Spring 全家桶之 Spring Boot 2.6.4(四)- Data Access(Part A JDBC)
Spring 全家桶之 Spring Boot 2.6.4(四)- Data Access(Part A JDBC)