Spring Boot 服务端开发项目目录结构
Posted 南歌子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot 服务端开发项目目录结构相关的知识,希望对你有一定的参考价值。
后端服务器的组成: pom.xml(Maven项目配置文件) + java文件夹 + resource文件夹
- 代码层(java),根目录com.xxx: XxxApplication.java + 对应模块代码(domain + controller + service + mapper等)
- XxxApplication.java(项目主入口,main方法)
- controller: 控制层,请求接口
- service: 服务层,逻辑代码, 数据服务的实现接口(serviceImpl)UserService.java 和 UserServiceImpl.java
- mapper: 数据层,或者dao, 比如UserMapper.java 、UserMapper.xml
-
domain: 实体类,同 bean、entity、model
bean: 任何一个java类都可以成为一个bean,这个类里包含对象的属性、get、set方法及其他的业务逻辑。
model: model是MVC中的概念,可以理解为View层展示数据的对象。
entity:数据表对应到实体类的映射。
- 资源层(resource):存放资源文件,比如邮件html、mapper
- email邮件模板,比如registerSuccess.html
- properties配置文件,比如mybatis.properties
- mapper文件,比如UserMapper.xml(也可以写到代码层的mapper文件夹中)
- template模板
- application.yml
- log4j2.xml日志配置
// 根目录结构 -src: -main: -java: - com.xxx -resource: - -test: -target: -pom.xml
- src/main/java: 代码文件目录
- src/main/resource: 资源文件目录
- pom.xm:Maven项目配置文件
// java代码文件目录: 文件目录按如下进行规范命名 -java: -com.xxx: -entity -controller -service -mapper -util -XxxApplication.java
- entity:实体类,也可以命名为bean、entity、model,例如User.java
- controller: 控制层,请求接口,例如UserController.java
- service: 服务层,以及关联的接口文件,例如UserService.java(impl/UserServiceImpl.java)
- mapper: 数据层,也可以命名为dao,例如UserMapper.java和UserMapper.xml
- model: 请求使用到的实体类: xxxRequestTO.java、xxxReponseTO.java
- config、constant、util等配置文件
- XxxApplication.java : 项目主入口,main方法
// resource资源文件目录 -resource: -mapper -static -template -application.yml
- application.yml: 配置文件,也可命名为application.properties
// 数据库配置 -- application.yml spring: datosource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/dataBaseName?userUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8 username: youMysqlUsername password: yourMysqlPassword
以上是关于Spring Boot 服务端开发项目目录结构的主要内容,如果未能解决你的问题,请参考以下文章
最细致的Spring Boot结合Vue前后端分离项目打包部署步骤(搭配Nginx)
最细致的Spring Boot结合Vue前后端分离项目打包部署步骤(搭配Nginx)
全栈的自我修养: 001环境搭建 (使用Vue,Spring Boot,Flask,Django 完成Vue前后端分离开发)
全栈的自我修养: 002使用@vue/cli进行vue.js环境搭建 (使用Vue,Spring Boot,Flask,Django 完成Vue前后端分离开发)