Javaweb之三层架构
2020-07-14 06:15
155 查看
三层架构
三层架构是一种设计软件的体系结构。
三层架构就是为了符合“高内聚,低耦合”思想,把各个功能模块划分为
表示层(UI)、
业务逻辑层(BLL)和
数据访问层(DAL)三层架构,各层之间采用
接口相互访问,并通过对象模型的
实体类(Model)作为数据传递的载体,不同的对象模型的实体类一般对应于数据库的不同表,实体类的属性与数据库表的字段名一致。
表示层(UI)
表示层又称表现层或视图层或用户界面层 UI(User Interface layer):就是实现
与用户交互的功能,将用户的需求传达和反馈,即用于接受用户输入的数据,同时反馈相关的输出数据展示给用户。
业务逻辑层(BLL)
业务逻辑层 BLL(Business Logic Layer):是连接表示层和数据访问层的桥梁,
实现业务逻辑的功能。可以对接受到的数据进行处理、执行相关的计算等一些逻辑操作。
业务逻辑层通过调用数据访问层的各种操作方法,将这些方法按一定的逻辑组合起来实现具体需求,将这个过程比作搭积木的过程。
数据访问层(DAL )
数据访问层又称持久层 DAL (Data access layer):主要用来
操作数据库中的数据,实现数据的增加、删除、修改、查询等操作,并将操作结果反馈到业务逻辑层 BBL。
比如在数据访问层定义了一些操作数据的方法,即增、删、改、查的方法,将这些方法比作一块块的积木。
比如:
1、用户需要计算功能
用户在 UI 层输入用于计算的数据,然后传递给 BLL,在 BLL 进行计算操作,最后再将结果返回给 UI 层,通过UI 层展示给用户。
即:UI —> BLL —> UI
2、用户登录功能
用户在 UI 层输入相关的登录信息,然后传递给 BLL,在 BLL 进行相关的逻辑验证后将需要操作的指令传递给DAL,DAL根据接收到的指令对数据库中的数据进行相关的操作,然后将操作结果反馈给 BLL,BLL进一步反馈给 UI层,在 UI层展示用户需要的信息。
即:UI —> BLL —> DAL —> BLL —>UI
实体类库(Entity)
实体类库是数据库表的映射对象,即将一个数据表映射成一个实体类,表中的每一个记录封装为该实体类的对象,表中的每个字段对应实体对象中的一个属性。实体类库主要用于封装表中数据方便在表示层、业务逻辑层以及数据访问层之间进行传输,实现各个结构层的
参数传输。
相关层的Java包命名规则 | 对应的层 |
---|---|
com.xxx.项目名.dao | 保存dao层接口 (数据访问层) |
com.xxx.项目名.dao.impl | 保存dao层接口的实现类 |
com.xxx.项目名.service | 保存service层接口 (业务逻辑层) |
com.xxx.项目名.service.impl | 保存service层接口的实现类 |
com.xxx.项目名.web | 保存web层接口类 (表示层) |
com.xxx.项目名.util | 保存相关工具类 |
com.xxx.项目名.domain | 保存 javabean 标准类(实体类) |
参考:
https://baike.baidu.com/item/三层架构
相关文章推荐
- javaWeb的三层架构图
- 对JAVA中MVC设计模式、JAVAWEB的三层架构、AOP面向切面编程的总结
- JavaWeb学习之三层架构实例(二)
- javaWeb之三层架构
- 简单的三层架构及思想,总结(适合简单框架搭建)
- 三层架构
- 三层架构与MVC的区别
- 三层架构理论的理解
- 三层架构,MVC编程模式,与ssm框架的关系
- 三层架构基础概念
- 对三层架构的简单改进
- 从三层架构到IoC的蜕变
- asp.net mvc 三层架构之dal层查询方法
- 基于EF+WCF的通用三层架构及解析
- 零基础学C#3.0 -- .net的三层架构
- 三层架构实战篇—系统登录实例
- 三层架构demo
- 大型高并发与高可用的三层缓存架构总结
- 三层架构之抽象父类SQLHelper
- 三层架构中Model的作用