使用SpringBoot中web项目推荐目录结构的问题
SpingBoot 365计划开始更新了,计划手敲365个dSpringBoot案例回顾总结形成知识体系。目前已经输出了32节的内容。所有源码托管在GitHub和Gitee上。
下面是我创建的目录结构
.
├── ./pom.xml
└── ./src
├── ./src/main
│ ├── ./src/main/java
│ │ └── ./src/main/java/com
│ │ └── ./src/main/java/com/rumenz
│ │ ├── ./src/main/java/com/rumenz/Lession3Application.java
│ │ ├── ./src/main/java/com/rumenz/config
│ │ ├── ./src/main/java/com/rumenz/controller
│ │ ├── ./src/main/java/com/rumenz/domain
│ │ ├── ./src/main/java/com/rumenz/dto
│ │ ├── ./src/main/java/com/rumenz/entity
│ │ ├── ./src/main/java/com/rumenz/mapper
│ │ ├── ./src/main/java/com/rumenz/repository
│ │ ├── ./src/main/java/com/rumenz/service
│ │ │ ├── ./src/main/java/com/rumenz/service/1.txt
│ │ │ └── ./src/main/java/com/rumenz/service/impl
│ │ ├── ./src/main/java/com/rumenz/utils
│ │ └── ./src/main/java/com/rumenz/vo
│ └── ./src/main/resources
│ ├── ./src/main/resources/application.properties
│ ├── ./src/main/resources/mapper
│ ├── ./src/main/resources/static
│ └── ./src/main/resources/templates
└── ./src/test
└── ./src/test/java
└── ./src/test/java/com
└── ./src/test/java/com/rumenz
└── ./src/test/java/com/rumenz/Lession3ApplicationTests.java项目结构
启动类
Lession3Application.java一般放在com.rumenz下
前端控制器controller
前端控制器又叫controller层,放在./src/main/java/com/rumenz/controller路径下,也就是com.rumenz.controller包下。
服务接口层 service
也叫service层,放在./src/main/java/com/rumenz/service路径下,也就是com.rumenz.service包下。
服务接口实现层 impl
服务接口层的具体实现类,放在./src/main/java/com/rumenz/service/impl路径下,也就是com.rumenz.service.impl包下。
数据访问层 repository或mapper
访问数据的库的接口
- jpa项目:放在
./src/main/java/com/rumenz/repository路径下。也就是com.rumenz.repository包下。 - mybatis项目:放在
./src/main/java/com/rumenz/mapper路径下。也就是com.rumenz.mapper包下。
工具类库 utils
放一些公用的小工具方法。放在./src/main/java/com/rumenz/utils路径下。也就是com.rumenz.utils包下。
配置类 config
项目的所有配置类。放在./src/main/java/com/rumenz/config路径下。也就是com.rumenz.config包下。
数据传输对象 DTO
DTO(Data Transfer Object)表示一个数据传输对象,DTO通常用于前端控制层controller和服务层service之间传输对象,DTO一般不会直接返回给前端, 由服务层返回。前端界面显示的字段会新封装成一个VO(View Object)
前端视图对象VO
VO(View Object)用来封装前端界面显示字段。放在./src/main/java/com/rumenz/vo路径下。也就是com.rumenz.vo包下。
静态资源的目录结构
配置文件
./src/main/resources/application.properties
静态资源目录
./src/main/resources/static用来存放css,js,image等静态资源。
模板目录
./src/main/resources/templates用来存放html模板。
mybatis映射文件
./src/main/resources/mapper用来存在xml的sql文件。
完整项目结构

本小结源码地址:
GitHub:https://github.com/mifunc/springboot/tree/main/lession3
Gitee:https://gitee.com/rumenz/springboot/tree/master/lession3https://rumenz.com/rumenbiji/springboot-web-directory-structure.html
到此这篇关于SpringBoot中web项目推荐目录结构的文章就介绍到这了,更多相关SpringBoot目录结构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Springboot如何根据docx填充生成word文件并导出pdf
这篇文章主要介绍了Springboot如何根据docx填充生成word文件并导出pdf问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-08-08
使用Okhttp实现上传文件+参数请求接口form-data
在进行接口对接时,常遇到需要传递多种类型参数及文件上传的情况,解决此问题的关键在于参数传递和文件上传的正确处理,在Service层和Controller层的传参,可以通过@RequestParam标注或直接使用请求实体类,但若结合文件上传,则不应使用@RequestBody注解2024-10-10
SpringBoot2.x 整合 AntiSamy防御XSS攻击的简单总结
本文主要对SpringBoot2.x集成AntiSamy防御XSS攻击进行简单总结,其中SpringBoot使用的2.4.5版本,通过示例代码给大家介绍的非常详细,需要的朋友参考下吧2021-08-08
Java使用IntelliJ IDEA连接MySQL的详细教程
这篇文章主要给大家介绍了关于Java使用IntelliJ IDEA连接MySQL的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2021-04-04


最新评论