• 数据访问层 (DAO)


    数据持久化

      持久化:将程序中的数据在瞬间状态下和持久状态间转换的机制(JDBC)

      主要持久化操作:保存、删除、读取、和查找。

      采用面向接口编程,可以降低代码间的耦合性,提高代码的可扩展性和可维护性。

    DAO模式

    1. DAO ( DataAccessObjects ,数据存取对象) :

                   位于业务逻辑和持久化数据之间实现对持久化数据的访问

      2.组成部分:

               DAO接口:把对数据库的所有的操作定义成抽象方法,可以提供多种实现。

               DAO实现类:针对不同数据库给出DAO接口定义方法的具体实现。

               实体类:用于存放于传输对象数据。

               数据库连接和关闭工具类:避免数据库连接和关闭代码的重复使用,方便修改

      3.DAO模式提供了访问关系型数据库系统所需操作的接口,将数据访问和业务逻辑分 离,对上层提供面向对象的数据访问接口

      4.优势:① 隔离了数据访问代码和业务逻辑代码;② 隔离了不同数据库实现。

    分层开发

        优势:

    1. 每一层专注于自己功能的实现,便于提高质量
    2. 便于分工协作,提高效率
    3. 便于代码复用
    4. 便于程序扩展

     特点:

    1. 每一层都有自己的职责
    2. 上层不关心下层的实现细节,上层通过下层提供的对外接口来实现其功能
    3. 上层调用下层的功能,下层不能调用上层的功能;下层为上层提供服务,而不使用上层提供的功能

     原则:

      ①  封装性原则:每个层次向外提供公开的统一接口,隐藏内部的功能实现细节,其他层次不能也没有必要了解其内部细节。

      ②  顺序访问原则:下一层为上一层提供服务,而不使用上一层提供的服务

        (业务逻辑层  ---->     数据访问层       业务逻辑层  <---- 数据访问层)

    实体类

            特征:1.属性一般用private修饰(getter/setter方法—---用public修饰);

                    2.最好实现java.io.Serializable接口支持序列化机制,可以将该对象转换成字节序列而保存在磁盘上或在网络上传输;

                    3.对实体类提供无参构造方法,根据业务需要提供相应的有参构造方法;

                    4.定义属性serialVersionUID,解决不同版本之间的序列化问题

                         (private static final long serialVersionUID=2070056025956126480L)

    方法调用时:

               表示层——>业务逻辑层——>数据访问层

    写代码时:

               数据访问层——>业务逻辑层——>表示层

                实体类(表在面向对象中的实现):

            表名——类名、字段——属性     编写一个实体类,将一个表用类实现;包名——entity或models存放实体类

                测试类、网页、界面UI(表示层)——main方法所在的类

                业务逻辑层(桥梁作用):

                       表示层的数据,传递到数据访问层

                BaseDAO类:

            对表进行操作的类(包存放)——数据访问层    对数据库的访问和操作(辅助类)

    Hold on!
  • 相关阅读:
    080626 雨(近期目标)
    6月25日 多云
    火一样的冷
    sgu107. 987654321 problem 简单打表 难度:0
    快速切题 sgu 111.Very simple problem 大数 开平方 难度:0 非java:1
    sgu114. Telecasting station 难度:1
    109. Magic of David Copperfield II 构造 难度:2
    sgu108. Selfnumbers 2 滚动数组 打表 难度:1
    快速切题 sgu115. Calendar 模拟 难度:0
    快速切题 sgu117. Counting 分解质因数
  • 原文地址:https://www.cnblogs.com/linjiaxiaomeiainia/p/6820974.html
Copyright © 2020-2023  润新知