前言
在上节中,我们介绍了SpringBoot
开发环境与正式环境
的配置搭建。大家有兴趣的话,可参考SpringBoot(8) — 自定义配置文件设置多开发环境
在项目实际开发过程中,我们不仅要区分正式,测试环境,还会对项目结构即代码做分层。目的是为了将项目模块化划分,做好隔离。
今天涉及知识:
- 为什么要项目分层
- 做哪些分层,各层代表什么意思
一. 为什么要项目分层
其实前言中已经讲到了,项目代码分层,一个是为了进行模块化便于管理,另一个原因是为了对单个模块进行封装
,提高单各模块的安全性
。
二. 做哪些分层,各层代表什么意思
一般的话,我们会将项目分成几个文件夹:
- controller
- dao
- service
- impl
- entity
下面给出以上几个文件家的职责:
2.1 entity
数据 model
,一般放一些会用到的java bean
,和数据表
映射的数据实体类。
2.2 dao
提供数据库
位面的操作接口层,如用于操作数据库的增删改查
接口。
2.3 service
提供业务逻辑层的接口。
2.4 impl
提供具体的业务逻辑。一般此层的类继承自service
文件夹中的接口,然后引用dao
文件夹中的接口对象,在此层提供具体的业务逻辑,当涉及到数据库操作时,会用dao
层接口对象实现。
2.5 controller
引用service
层的接口对象去调用具体的业务逻辑,但此层主要用于给外部(如客户端)提供调用的接口,以及涉及到的swagger
文档,也是在此层实现。
具体功能图如下:
image.png
ok, 今天关于项目分成的知识就介绍到这里了,谢谢大家。