DAO和分层

JDBC访问数据库步骤:加载JDBC驱动、与数据库建立连接、创建Statement或PreparedStatement对象、发送SQL语句、得到返回结果、处理犯规结果
采用面向接口编程,可以降低代码间的耦合性,提高代码的可扩展性和可维护性
持久化:将程序中的数据在瞬间状态和持久状态间转换的机制
JDBC是一种持久化机制,将程序直接保存为文本文件也是持久化的一种实现
持久化操作主要有:保存、删除、修改、读取、查找
DAO:就是DataAccessObjects(数据存取对象),位于业务逻辑和持久化数据之间,实现对持久化数据的访问
DAO的作用:隔离业务逻辑代码和数据访问代码;隔离不同数据库的实现
典型的DAO模式主要由DAO接口、DAO实现类、实体类、数据库连接类和关闭工具类组成。
* DAO接口:把对数据库的所有操作定义成抽象方法,可以提供多种实现
* DAO实现类:针对不同数据库给出DAO接口定义方法的具体实现
* 实体类:用于存放与传输对象数据
* 数据库连接和关闭工具类:避免了数据库连接和关闭代码的重复使用,方便修改


分层开发的优势:
* 每一层专注于自己功能的实现,便于提高质量
       * 便于分工协作,从而提高效率
* 便于代码复用
* 便于程序拓展
分层开发的特点:
* 每一层都有自己的职责
       * 上一层不用关心下一层的实现细节,上一层通过下一层提供的对外接口来使用其功能
* 上一层调用下一层的功能,下一层不能调用上一层功能
分层开发原则:
* 封装性原则:简单而言,就是每个层次向外提供公开的统一接口,而隐藏内部的功能实现细节,其他层次不能也没有必要了解其内部细节
* 顺序访问原则:下一层为上一层提供服务,而不使用上一层提供的服务。业务逻辑层可以访问数据访问层的功能,而数据访问层不能访问业务逻辑层的功能
实体类的特征:
* 实体类的属性一般使用private修饰
* 根据业务需要和封装性要求对实体类的属性提供getter/setter方法,负责属性的读取和赋值,一般使用public修饰
* 对实体类提供无参构造方法,根据业务需要提供相应的有参构造方法
* 实体类最好实现java.io.Serializable接口,支持序列化机制,可以将该对象转换成字节序列而保存在磁盘上或在网络上传输
* 如果实体类实现了java.io.Serializable接口,就应该定义属性serialVersionUID,解决不同版本之间的序列化问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值