SpringBoot项目目录结构

@TOC

阿里巴巴Java开发手册见: https://gd.bajins.com/0:/Books/

一、代码层结构

根目录:com.bajins

领域模型的相关命名:DO/BO/DTO/VO/DAO
  • 启动类BajinsApplication.java推荐放在根目录com.bajins包下
  • 数据实体类domain

    • jpa项目: com.bajins.domain
    • mybatis项目: com.bajins.entity
  • 数据接口访问层Dao

    • jpa项目: com.bajins.repository
    • mybatis项目: com.bajins.mapper
  • 数据服务接口层Service:com.bajins.service
  • 数据服务接口实现层Service Implements:com.bajins.service.impl
  • 前端控制器层Controller:com.bajins.controller
  • 工具类库utils:com.bajins.utils
  • 配置类config:com.bajins.config
  • 数据传输对象dto:com.bajins.dto
数据传输对象Data Transfer Object用于封装多个实体类domain之间的关系,不破坏原有的实体类结构
  • 视图包装对象vo:com.bajins.vo
视图包装对象View Object用于封装客户端请求的数据,防止部分数据泄露如:管理员ID,保证数据安全,不破坏 原有的实体类结构
  • 常量类constant:com.bajins.constant

二、资源目录结构

根目录:resources

  • 项目配置文件:resources/application.yml
  • 静态资源目录:resources/static/
用于存放html、css、js、图片等资源
  • 视图模板目录:resources/templates/
用于存放jsp、thymeleaf等模板文件
  • mybatis映射文件:resources/mappers/
  • mybatis配置文件:resources/spring-mybatis.xml

三、mybatis项目结构示例

.
│  mvnw
│  mvnw.cmd
│  pom.xml
│  README.md
│  
└─src
    ├─main
    │  ├─java
    │  │  └─com
    │  │      └─bajins
    │  │          └─api
    │  │              │  BajinsApiApplication.java
    │  │              │      
    │  │              ├─config
    │  │              │  │  QuartzJob.java
    │  │              │  │  Swagger2.java
    │  │              │  │  TaskExecutorConfig.java
    │  │              │  │  
    │  │              │  └─websocket
    │  │              │          WebSocketConfig.java
    │  │              │          WebSocketHandler.java
    │  │              │          WebSocketInterceptor.java
    │  │              │          
    │  │              ├─constants
    │  │              │      WeChatConstants.java
    │  │              │      
    │  │              ├─mapper
    │  │              │      WechatLoginLogMapper.java
    │  │              │      WechatMsgMapper.java
    │  │              │      WechatUserOpenidMapper.java
    │  │              │      
    │  │              ├─domain
    │  │              │      WechatLoginLog.java
    │  │              │      WechatMsg.java
    │  │              │      WechatUserOpenid.java
    │  │              │      
    │  │              ├─service
    │  │              │  │  UserSignatureService.java
    │  │              │  │  WechatService.java
    │  │              │  │  WxMsgService.java
    │  │              │  │  
    │  │              │  └─impl
    │  │              │          WechatServiceImpl.java
    │  │              │          WxMsgServiceImpl.java
    │  │              │          
    │  │              ├─utils
    │  │              │  │  EmailUtil.java
    │  │              │  │  EncryptUtil.java
    │  │              │  │  StringUtil.java
    │  │              │  │          
    │  │              │  └─wechat
    │  │              │          SHA1.java
    │  │              │          WXBizMsgCrypt.java
    │  │              │          XMLParse.java
    │  │              │          
    │  │              ├─vo
    │  │              │      TemplateLibraryVO.java
    │  │              │      TemplateMessageVO.java
    │  │              │      
    │  │              └─controller
    │  │                      WechatController.java
    │  │                      WxMsgController.java
    │  │                      
    │  └─resources
    │      │  application.properties
    │      │  ehcache3.xml
    │      │  logback-spring.xml
    │      │  
    │      ├─mappers
    │      │      WechatLoginLogMapper.xml
    │      │      WechatMsgMapper.xml
    │      │      WechatUserOpenidMapper.xml
    │      │      
    │      ├─static
    │      └─templates
    └─test
        └─java
            └─com
                └─bajins
                    └─api
                            BajinsApiApplicationTests.java
                            

你可能感兴趣的:(SpringBoot项目目录结构)