# 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/)