第三节:SpringBoot中web项目推荐目录结构

2022-06-02 18:39:02 浏览数 (1)

SpingBoot 365计划开始更新了,计划手敲365个SpringBoot案例回顾总结形成知识体系。目前已经输出了32节的内容。所有源码托管在GitHub和Gitee上。

下面是我创建的目录结构

代码语言:javascript复制
.
├── ./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包下。

数据访问层 repositorymapper

访问数据的库的接口

  • 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文件。

完整项目结构

image-20211101133438063

系列文章

第一节:创建SpringBoot项目并运行HelloWorld

第二节:SpingBoot单元测试

本小结源码地址:

  • GitHub:https://github.com/mifunc/springboot/tree/main/lession3
  • Gitee:https://gitee.com/rumenz/springboot/tree/master/lession3
  • https://rumenz.com/rumenbiji/springboot-web-directory-structure.html

介绍

  • 我的博客 https://rumenz.com/
  • 我的工具箱 https://tooltt.com/
  • 微信公众号:【入门小站】

0 人点赞