1、传统的数据库访问程序:
(1)数据库访问和数据处理放在一起实现
(2)用户界面层直接调用数据访问实现
(3)整个系统功能放在同一项目中实现
2、三层架构模式
三层架构:
(1)界面层(UI)
为用户提供一种交互式操作界面。
作用:
根据用户的具体需求,为每个功能模块部署输入控件、操作控件和输出控件,并调用业务逻辑层中类的方法实现功能。
(2)业务逻辑层(BLL)
是界面层与数据访问层之间的桥梁,负责数据处理、传递。
作用:
为用户的每个功能模块,设计一个业务逻辑类。此时,需要利用相关的数据访问层类中,记录操作方法的特定集合,来实现每个逻辑功能。
(3)数据访问层(DAL)
实现对数据的保存和读取操作
作用:
封装每个数据表的基本记录操作,为实现业务逻辑提供数据库访问基础。
3、三层之间的调用关系
(1)数据访问层的类,直接访问数据库,实现基本记录操作。
(2)业务逻辑层的类,调用相关的数据访问层的类,实现用户所需功能。
(3)界面层:部署控件后,调用业务逻辑层的类,实现功能。
4、三层架构的优点
(1)将应用程序的功能分层后,对于固定的DBMS,数据访问层基本可以不变。
(2)一旦用户的需求改变,首先修改业务逻辑层,界面层稍做改动即可。
(3)这种做法使程序的可复用性、可修改性,都得到了很好的改善。
5、三层之间的依赖关系
6、三层之间的数据传递方向
7、实体类
一般情况下,三层架构除了基本的界面层、业务逻辑层和数据访问层之外,还有一个实体层Entity。
Entity层中存放的是实体类,来实现数据对象实体和方法分离,以便在多个层中传递数据。
需要实体类的原因:
因为结果集它不具备OO的优点,实现数据检索比较繁琐、易出错,它使数据架构暴露在业务逻辑层和界面层。为了消除这些局限性需要使用实体类。
从OOP思想考虑,它是完全受控制的对象,它具有面向对象的基本特征,它可以自定义行为,它消除了关系数据和对象之间的差异。
将关系表中的每个字段抽取为类的字段(注意类型匹配),并封装成属性,设计构造函数,来将关系表抽取为类。这种类就称为实体类。
这个抽取过程称为对象关系映射(ORM)。
对象关系映射Object Relational Mapping,简称ORM,是为了解决面向对象的类与关系数据库的表之间存在的不匹配的现象,通过使用描述对象和关系之间映射的元数据,在程序中的类对象,与关系数据库的表之间建立持久的关系,用于在程序中描述数据库表。
本质上就是将数据从一种形式转换到另外一种形式。
实体类在各层间的传递:
标签:逻辑,实体类,架构,访问,数据库系统,三层,数据 From: https://www.cnblogs.com/qiqi-yi/p/17275914.html