# scaffold-springboot **Repository Path**: tdpain/scaffold-springboot ## Basic Information - **Project Name**: scaffold-springboot - **Description**: 应慢慢起步大佬、菜鸟大佬要求,写下springboot脚手架项目,不知是否破产,先肝一个月 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-06-26 - **Last Updated**: 2024-04-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # scaffold-springboot #### 介绍 如今市面上充斥着ruoyi、guns等等框架,但作为冰河一群分父之一,肯定是要自己手敲一个springboot脚手架的,给大家一个开箱即用,改改就能用于公司项目中的简便脚手架,预计8月出版,如不能则破产 #### 软件架构 软件架构说明 springboot、mybatis、mybatis-plus、spring-security、mysql、redis #### 安装教程 1. xxxx 2. xxxx 3. xxxx #### 整合说明 ##### 整合knife4j 1. 添加依赖 ``` com.github.xiaoymin knife4j-spring-boot-starter 3.0.3 ``` 2. 加入配置文件 备注: 目前都是写死的, 可自行配置在yml文件用@ConfigurationProperties读取 ``` @Configuration @EnableSwagger2 public class Knife4jConfiguration { @Bean(value = "defaultApi2") public Docket defaultApi2() { String groupName = "3.X版本"; Docket docket = new Docket(DocumentationType.OAS_30) .apiInfo(new ApiInfoBuilder() .title("这是knife4j API ") .description("# 这里记录服务端所有的接口的入参,出参等等信息") .termsOfServiceUrl("http://jd.com") .contact(new Contact("天道佩恩", "http://127.0.0.1", "fyt765174926@163.com")) .version("3.0") .build()) //分组名称 .groupName(groupName) .select() //这里指定Controller扫描包路径 .apis(RequestHandlerSelectors.basePackage("com.pain.scaffold.admin.backend.controller")) .paths(PathSelectors.any()) .build(); return docket; } ``` 3. 使用注解 ``` @Api: 类上注解 @ApiOperation: 方法注解 @ApiModel: 实体类注解 @ApiModelProperty: 实体类字段注解 ``` 启动服务, 访问http://localhost:port/doc.html 即可访问 ##### 打印sql语句 ​ 1.添加依赖 ``` com.alibaba druid-spring-boot-starter 1.2.8 p6spy p6spy 3.9.1 ``` 2. 配置yml文件 dev.yml文件 ``` datasource: name: mysql type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.p6spy.engine.spy.P6SpyDriver url: jdbc:p6spy:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root password: root ``` ​ prd.yml文件 ``` datasource: name: mysql type: com.alibaba.druid.pool.DruidDataSource driverClassName: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: root password: root ``` 3. 配置spy.properties文件 ``` modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory # 自定义日志打印 logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger #日志输出到控制台 appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger # 使用日志系统记录 sql #appender=com.p6spy.engine.spy.appender.Slf4JLogger # 设置 p6spy driver 代理 deregisterdrivers=true # 取消JDBC URL前缀 useprefix=true # 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset. excludecategories=info,debug,result,commit,resultset # 日期格式 dateformat=yyyy-MM-dd HH:mm:ss # 实际驱动可多个 #driverlist=org.h2.Driver # 是否开启慢SQL记录 outagedetection=true # 慢SQL记录标准 2 秒 outagedetectioninterval=2 ``` #### 使用说明 1. xxxx 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)