logo
5
0
WeChat Login
Tenderness<2863782688@qq.com>
第一版本

一、使用说明

1、新项目需要修改的地方

  • 第三级包名demo可以改为自己项目对应的包名

  • Application.java@MapperScan 中的路径改为自己项目中对应的包名

  • settings.gradle中可以修改gradle项目名rootProject.name

2、配置gradle打包为war(如有需要才进行以下配置)

  • Application.java同级目录下新增一个继承自SpringBootServletInitializer的类,如
public class ServletInitializer extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } }
  • build.gradleplugins节点加入 id 'war',如下
plugins { id 'org.springframework.boot' version '2.2.0.RELEASE' id 'io.spring.dependency-management' version '1.0.8.RELEASE' id 'java' id 'war' }
  • dependencies节点中加入依赖,如下
dependencies { providedRuntime 'org.springframework.boot:spring-boot-starter-tomcat' }

PS:使用war包部署时,建议将version置空

3、使用开发环境配置文件 建议新建一个配置文件,如application-local.yml,并且该文件不使用git管理,方便多人协作开发; 然后在启动服务时使用program arguments : --spring.profiles.active=local 指定开发环境。

二、目录结构

1、包结构

路径说明
com/choimroc/demo/application业务模块
com/choimroc/demo/common/base基类
com/choimroc/demo/common/configspring及相关类库的配置
com/choimroc/demo/common/convertrequest参数转换相关
com/choimroc/demo/common/exception全局异常处理
com/choimroc/demo/common/gsongson相关
com/choimroc/demo/common/locale国际化相关
com/choimroc/demo/common/resultresponse相关
com/choimroc/demo/common/validatorrequest参数校验相关
com/choimroc/demo/security/auth用户权限校验相关
com/choimroc/demo/security/lock缓存锁(防止重复提交等)相关
com/choimroc/demo/tool工具类

2.资源结构

路径说明
resources/i18n多语言文本资源,搭配国际化使用
resources/templates自动代码生成相关模板文件
com/choimroc/demo/common/configspring及相关类库的配置
resources/application.ymlspring项目配置文件
resources/logback-spring.xml项目日志配置文件

三、详细说明

1、业务模块

  • com/choimroc/demo/application目录下每个业务模块使用单独的目录,例如com/choimroc/demo/application/example;

  • 每个业务模块下包含下列几个目录(仅供参考)

    目录名说明
    controller接口控制器
    entity数据库实体类
    mapperMyBatis数据库操作
    service业务逻辑
    bodyRequestBody和ResponseBody

2、权限验证

  • 验证文件为com/choimroc/demo/security/auth/SecurityInterceptor.java,需要自行修改为自己项目的验证逻辑
  • 使用@IgnoreSecurity注解过滤掉不需要进行权限验证的接口