1
0
mirror of https://gitee.com/incloudcode/yexuejc-springboot.git synced 2025-08-07 19:19:31 +08:00

2.1.3[原功能的最后一个版本]

This commit is contained in:
yexuejc 2023-09-19 11:26:17 +08:00
parent b8cba48792
commit 15498dafcc
18 changed files with 183 additions and 209 deletions

View File

@ -1,6 +1,20 @@
yexuejc-springboot 更新内容 yexuejc-springboot 更新内容
------------------- -------------------
#### version 2.1.3
**time2023-9-19 11:15:33** <br/>
**branch** 2.x <br/>
**关联工程:** <br/>
```
springboot-base:1.5.0-jre8
spring-boot-starter-parent:2.7.15
```
**update** <br/>
1. 全面更新依赖时隔3年多该项目又活了
2. 保证原功能正常的最后一个版本
3. 该版本基于JDK1.8
---
#### version 2.1.2 #### version 2.1.2
**time2020-5-18 12:18:14** <br/> **time2020-5-18 12:18:14** <br/>
**branch** master <br/> **branch** master <br/>
@ -13,6 +27,7 @@ spring-boot-starter-parent:1.5.16.RELEASE
1. 更新依赖 1. 更新依赖
2. 更新仓库地址 https://nexus.yexuejc.club/ 为 https://nexus.yexuejc.top/ 2. 更新仓库地址 https://nexus.yexuejc.club/ 为 https://nexus.yexuejc.top/
---
#### version 2.1.1 #### version 2.1.1
**time2019-11-1 13:32:07** <br/> **time2019-11-1 13:32:07** <br/>
**branch** master <br/> **branch** master <br/>
@ -23,7 +38,7 @@ spring-boot-starter-parent:2.0.5.RELEASE
``` ```
**update** <br/> **update** <br/>
1. redis 配置修改,增加开关,更兼容 1. redis 配置修改,增加开关,更兼容
---
#### version 2.1.0 #### version 2.1.0
**time2019-7-24 18:30:49** <br/> **time2019-7-24 18:30:49** <br/>
**branch** master <br/> **branch** master <br/>
@ -35,7 +50,7 @@ spring-boot-starter-parent:2.0.5.RELEASE
**update** <br/> **update** <br/>
1. 所有自动装配增加开关,默认不装配。装配方式请参考[本项目自动装配开关](doc/plugin/AutoConfigure.md) 1. 所有自动装配增加开关,默认不装配。装配方式请参考[本项目自动装配开关](doc/plugin/AutoConfigure.md)
---
# #
#### version 2.0.6 #### version 2.0.6
**time2019年4月2日21:08:453** <br/> **time2019年4月2日21:08:453** <br/>
@ -49,7 +64,7 @@ spring-boot-starter-parent:2.0.5.RELEASE
1. 升级依赖 1. 升级依赖
2. 出入参加密 ParamsRequestBodyAdvice/ParamsResponseBodyAdvice 增加开关(默认关) 2. 出入参加密 ParamsRequestBodyAdvice/ParamsResponseBodyAdvice 增加开关(默认关)
---
# #
#### version 2.0.5 #### version 2.0.5
@ -65,7 +80,7 @@ spring-boot-starter-parent:2.0.5.RELEASE
支持账号登录、短信登录、第三方授权openid登录<br/> 支持账号登录、短信登录、第三方授权openid登录<br/>
功能链接[security重构-多方登录](doc/SECURITY.md) 功能链接[security重构-多方登录](doc/SECURITY.md)
---
# #
#### version 2.0.3 #### version 2.0.3
**time2018-11-9 16:58:06** <br/> **time2018-11-9 16:58:06** <br/>
@ -78,7 +93,7 @@ spring-boot-starter-parent:2.0.5.RELEASE
**update** <br/> **update** <br/>
1. 集成springboot security 多方登录 1. 集成springboot security 多方登录
2. 文档拆分 2. 文档拆分
---
# #
#### version 2.0.2 #### version 2.0.2
@ -107,8 +122,8 @@ logging.level.root=info
logging.path=/logs/yexuejc-springboot-parent logging.path=/logs/yexuejc-springboot-parent
``` ```
#
---
#### version 2.0.1 #### version 2.0.1
**time2018-9-28 15:25:30** <br/> **time2018-9-28 15:25:30** <br/>
**branch** 2.x <br/> **branch** 2.x <br/>
@ -119,8 +134,8 @@ spring-boot-starter-parent:2.0.5.RELEASE
``` ```
**update** <br/> **update** <br/>
1. 新增声明包 1. 新增声明包
#
---
#### version 2.0.0 #### version 2.0.0
**time2018-9-26 16:55:00** <br/> **time2018-9-26 16:55:00** <br/>
**branch** 2.x <br/> **branch** 2.x <br/>
@ -132,8 +147,8 @@ spring-boot-starter-parent:2.0.5.RELEASE
**update** <br/> **update** <br/>
1. 升级依赖 1. 升级依赖
2. 2.x分支将基于springboot 2.x 开发 2. 2.x分支将基于springboot 2.x 开发
#
---
#### version 1.1.0 #### version 1.1.0
**time2018-9-23 12:49:36** <br/> **time2018-9-23 12:49:36** <br/>
**branch** master <br/> **branch** master <br/>
@ -146,8 +161,8 @@ spring-boot-starter-parent:1.5.15.RELEASE
1. 升级依赖 1. 升级依赖
2. 增加SSL证书忽略默认关闭 2. 增加SSL证书忽略默认关闭
3. 本版本更新工具依赖[https://github.com/yexuejc/yexuejc-base.git](https://github.com/yexuejc/yexuejc-base.git)不向下兼容 3. 本版本更新工具依赖[https://github.com/yexuejc/yexuejc-base.git](https://github.com/yexuejc/yexuejc-base.git)不向下兼容
#
---
#### version 1.0.15 #### version 1.0.15
**time2018-9-3 19:29:39** <br/> **time2018-9-3 19:29:39** <br/>
**branch** master <br/> **branch** master <br/>
@ -158,8 +173,8 @@ spring-boot-starter-parent:1.5.15.RELEASE
``` ```
**update** <br/> **update** <br/>
1. 升级依赖 1. 升级依赖
#
---
#### version 1.0.14 #### version 1.0.14
**time2018-8-25 14:31:05** <br/> **time2018-8-25 14:31:05** <br/>
**branch** master <br/> **branch** master <br/>
@ -171,8 +186,8 @@ spring-boot-starter-parent:1.5.15.RELEASE
**update** <br/> **update** <br/>
1. 升级依赖 1. 升级依赖
2. 优化拦截规则:增加通配符 /** 2. 优化拦截规则:增加通配符 /**
#
---
#### version 1.0.13 #### version 1.0.13
**time2018-8-17 11:41:18** <br/> **time2018-8-17 11:41:18** <br/>
**branch** master <br/> **branch** master <br/>
@ -182,8 +197,8 @@ springboot-base:1.1.7
``` ```
**update** <br/> **update** <br/>
1. 升级base 1. 升级base
#
---
#### version 1.0.12 #### version 1.0.12
**time2018-6-19 22:18:03** <br/> **time2018-6-19 22:18:03** <br/>
**branch** master <br/> **branch** master <br/>
@ -193,30 +208,32 @@ springboot-base:1.1.6
``` ```
**update** <br/> **update** <br/>
1. maven仓库更新 1. maven仓库更新
---
# #
#### version 1.0.11 #### version 1.0.11
**time2018-6-19 22:18:03** <br/> **time2018-6-19 22:18:03** <br/>
**branch** master <br/> **branch** master <br/>
**update** <br/> **update** <br/>
1. 更新springboot-base:1.1.5依赖 1. 更新springboot-base:1.1.5依赖
#
---
#### version 1.0.10 #### version 1.0.10
**time2018年6月14日22:31:18** <br/> **time2018年6月14日22:31:18** <br/>
**branch** master <br/> **branch** master <br/>
**update** <br/> **update** <br/>
1. 更新springboot-base:1.1.4依赖 1. 更新springboot-base:1.1.4依赖
2. 统一编码UTF-8 2. 统一编码UTF-8
#
---
#### version 1.0.9 #### version 1.0.9
**time2018年6月2日12:17:18** <br/> **time2018年6月2日12:17:18** <br/>
**branch** master <br/> **branch** master <br/>
**update** <br/> **update** <br/>
1. 更新base依赖 1. 更新base依赖
#
---
#### version 1.0.8 #### version 1.0.8
**time** 2018-5-4 09:54:18<br/> **time** 2018-5-4 09:54:18<br/>
**branch** master <br/> **branch** master <br/>
@ -235,7 +252,7 @@ yexuejc.http.encrypt.private-alias=别名
yexuejc.http.encrypt.private-pwd=密码 yexuejc.http.encrypt.private-pwd=密码
``` ```
# ---
##### version 1.0.7 ##### version 1.0.7
**time** 2018-5-4 09:54:18<br/> **time** 2018-5-4 09:54:18<br/>
**branch** master <br/> **branch** master <br/>
@ -243,7 +260,7 @@ yexuejc.http.encrypt.private-pwd=密码
>1. 新增加密证书配置 >1. 新增加密证书配置
>2. RSA迁移到[yexuejc-base:1.1.1](https://github.com/yexuejc/yexuejc-base)工程 >2. RSA迁移到[yexuejc-base:1.1.1](https://github.com/yexuejc/yexuejc-base)工程
# ---
##### version 1.0.6 ~~1.0.5~~ ##### version 1.0.6 ~~1.0.5~~
**【change:2018-5-15 09:24:37】** 1.0.5 jitpack打包失败升级版本1.0.6<br/> **【change:2018-5-15 09:24:37】** 1.0.5 jitpack打包失败升级版本1.0.6<br/>
**time** 2018-5-4 09:54:18<br/> **time** 2018-5-4 09:54:18<br/>
@ -252,32 +269,34 @@ yexuejc.http.encrypt.private-pwd=密码
> [使用加密解密](doc/PARAMS_RSA_DECRYPT_ENCRYPT.md) > [使用加密解密](doc/PARAMS_RSA_DECRYPT_ENCRYPT.md)
> >
>1.增加json入参解密、出参加密 >1.增加json入参解密、出参加密
#
---
##### version 1.0.4 ##### version 1.0.4
**time** 2018-5-4 09:54:18<br/> **time** 2018-5-4 09:54:18<br/>
**branch** master <br/> **branch** master <br/>
**update** <br/> **update** <br/>
>1.更新springboot至1.5.12.RELEASE >1.更新springboot至1.5.12.RELEASE
#
---
#### version 1.0.3 #### version 1.0.3
**time** 2018-4-9 15:24:13<br/> **time** 2018-4-9 15:24:13<br/>
**branch** master <br/> **branch** master <br/>
**update** <br/> **update** <br/>
>1.变更包名 >1.变更包名
# ---
#### version 1.0.2 #### version 1.0.2
**time** 2018-4-1 17:00:15<br/> **time** 2018-4-1 17:00:15<br/>
**env** prod <br/> **env** prod <br/>
**update** <br/> **update** <br/>
>1.修复工具包ApiVO >1.修复工具包ApiVO
# ---
#### version 0.0.2 #### version 0.0.2
**time** 2018-1-31 13:48:34<br/> **time** 2018-1-31 13:48:34<br/>
**env** ivt <br/> **env** ivt <br/>
**update** <br/> **update** <br/>
>1.集成日志【security】 >1.集成日志【security】
# ---
##### version 0.0.1 ##### version 0.0.1
**time** 2018-1-31 12:16:10<br/> **time** 2018-1-31 12:16:10<br/>
@ -285,4 +304,4 @@ yexuejc.http.encrypt.private-pwd=密码
**update** <br/> **update** <br/>
>1.第一次上传,集成通用环境 >1.第一次上传,集成通用环境
# ---

View File

@ -13,3 +13,11 @@
单独使用例子工程:[https://github.com/yexuejc/springboot-security-login-simple](https://github.com/yexuejc/springboot-security-login-simple) 单独使用例子工程:[https://github.com/yexuejc/springboot-security-login-simple](https://github.com/yexuejc/springboot-security-login-simple)
* [1.0.6新增 针对API请求安全解决方案](PARAMS_RSA_DECRYPT_ENCRYPT.md)<br/> * [1.0.6新增 针对API请求安全解决方案](PARAMS_RSA_DECRYPT_ENCRYPT.md)<br/>
* [1.0.6新增 加密功能](PARAMS_RSA_DECRYPT_ENCRYPT.md) * [1.0.6新增 加密功能](PARAMS_RSA_DECRYPT_ENCRYPT.md)
### 运行错误
1. jdk版本问题请切换jdk为1.8版或者jvm增加启动参数`--add-opens java.base/java.util=ALL-UNNAMED`
```
Cannot load configuration class: com.example.demo.DemoApplication
Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @5af3afd9
```

104
pom.xml
View File

@ -5,7 +5,7 @@
<groupId>com.yexuejc.springboot</groupId> <groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-parent</artifactId> <artifactId>yexuejc-springboot-parent</artifactId>
<version>2.1.2</version> <version>2.1.3</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<name>${project.artifactId}</name> <name>${project.artifactId}</name>
@ -15,7 +15,7 @@
<!-- spring boot父级,包含了统一版本管理,统一插件管理等 --> <!-- spring boot父级,包含了统一版本管理,统一插件管理等 -->
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId> <artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version> <version>2.7.15</version>
<!--<relativePath/>--> <!--<relativePath/>-->
<!--lookup parent from repository--> <!--lookup parent from repository-->
</parent> </parent>
@ -26,59 +26,58 @@
</modules> </modules>
<properties> <properties>
<yexuejc.base.version>1.4.0</yexuejc.base.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<repos.yexuejc.url>https://nexus.yexuejc.top/repository/</repos.yexuejc.url> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<repos.aliyun.url>http://maven.aliyun.com/nexus/content/groups/public</repos.aliyun.url>
<repos.jitpack.url>https://jitpack.io</repos.jitpack.url>
<maven.compiler.verbose>true</maven.compiler.verbose>
<java.version>1.8</java.version> <java.version>1.8</java.version>
<validation-api.version>2.0.1.Final</validation-api.version> <maven.compiler.target>${java.version}</maven.compiler.target>
<springfox-swagger2.version>2.9.2</springfox-swagger2.version> <maven.compiler.source>${java.version}</maven.compiler.source>
<mybatis-spring-boot-starter.version>1.3.2</mybatis-spring-boot-starter.version> <maven.compiler.verbose>true</maven.compiler.verbose>
<mybatis.version>3.4.6</mybatis.version>
<jjwt.version>0.9.1</jjwt.version> <yexuejc.base.version>1.5.0-jre8</yexuejc.base.version>
<yexuejc-springboot.version>${project.version}</yexuejc-springboot.version>
<validation-api.version>2.0.1.Final</validation-api.version>
<springfox-swagger2.version>2.10.5</springfox-swagger2.version>
<mybatis-spring-boot-starter.version>2.3.1</mybatis-spring-boot-starter.version>
<mybatis.version>3.5.13</mybatis.version>
<jjwt.version>0.11.5</jjwt.version>
<fastjson.version>1.2.49</fastjson.version> <fastjson.version>1.2.49</fastjson.version>
<commons-codec.version>1.11</commons-codec.version> <commons-codec.version>1.15</commons-codec.version>
<!-- 阿里云相关 --> <!-- 阿里云相关 -->
<aliyun-java-sdk-core.version>4.1.1</aliyun-java-sdk-core.version> <aliyun-java-sdk-core.version>4.6.4</aliyun-java-sdk-core.version>
<aliyun-java-sdk-sts.version>3.0.0</aliyun-java-sdk-sts.version> <aliyun-java-sdk-sts.version>3.1.1</aliyun-java-sdk-sts.version>
<aliyun-sdk-oss.version>3.1.0</aliyun-sdk-oss.version> <aliyun-sdk-oss.version>3.17.1</aliyun-sdk-oss.version>
<aliyun-java-sdk-dysmsapi.version>1.1.0</aliyun-java-sdk-dysmsapi.version> <aliyun-java-sdk-dysmsapi.version>2.2.1</aliyun-java-sdk-dysmsapi.version>
<aliyun-sdk-mns.version>1.1.8</aliyun-sdk-mns.version> <aliyun-sdk-mns.version>1.1.9.2</aliyun-sdk-mns.version>
<!-- 支付宝相关 --> <!-- 支付宝相关 -->
<alipay-sdk-java.version>3.3.49.ALL</alipay-sdk-java.version> <alipay-sdk-java.version>4.38.76.ALL</alipay-sdk-java.version>
<!-- 微信相关 --> <!-- 微信相关 -->
<WXPay-SDK-Java.version>0.0.4</WXPay-SDK-Java.version> <WXPay-SDK-Java.version>0.0.4</WXPay-SDK-Java.version>
<postgresql.version>42.2.4</postgresql.version> <postgresql.version>42.6.0</postgresql.version>
<!--thymeleaf 相关--> <!--thymeleaf 相关-->
<thymeleaf.version>3.0.9.RELEASE</thymeleaf.version> <thymeleaf.version>3.1.2.RELEASE</thymeleaf.version>
<thymeleaf-layout-dialect.version>2.3.0</thymeleaf-layout-dialect.version> <thymeleaf-layout-dialect.version>3.3.0</thymeleaf-layout-dialect.version>
<thymeleaf-extras-springsecurity4.version>3.0.2.RELEASE</thymeleaf-extras-springsecurity4.version> <thymeleaf-extras-springsecurity4.version>3.0.5.RELEASE</thymeleaf-extras-springsecurity4.version>
<reflectasm.version>1.09</reflectasm.version> <reflectasm.version>1.11.9</reflectasm.version>
<!--dubbo--> <mybatis-plus.version>3.5.3.2</mybatis-plus.version>
<dubbo-spring-boot-starter.version>0.2.0</dubbo-spring-boot-starter.version>
<mybatis-plus.version>3.0.3</mybatis-plus.version>
</properties> </properties>
<!-- 声明包版本 继承项目自引入 --> <!-- 声明包版本 继承项目自引入 -->
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<!--基础包--> <!--基础包-->
<!--<dependency>-->
<!--<groupId>com.github.yexuejc</groupId>-->
<!--<artifactId>yexuejc-base</artifactId>-->
<!--<version>${yexuejc.base.version}</version>-->
<!--</dependency>-->
<dependency> <dependency>
<groupId>top.yexuejc</groupId> <groupId>top.yexuejc</groupId>
<artifactId>yexuejc-base</artifactId> <artifactId>yexuejc-base</artifactId>
<version>${yexuejc.base.version}</version> <version>${yexuejc.base.version}</version>
</dependency> </dependency>
<dependency>
<groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-base</artifactId>
<version>${yexuejc-springboot.version}</version>
</dependency>
<!-- 编码包 说明http://blog.csdn.net/jianggujin/article/details/51149133 --> <!-- 编码包 说明http://blog.csdn.net/jianggujin/article/details/51149133 -->
<dependency> <dependency>
<groupId>commons-codec</groupId> <groupId>commons-codec</groupId>
@ -88,15 +87,9 @@
<!-- JJWT --> <!-- JJWT -->
<dependency> <dependency>
<groupId>io.jsonwebtoken</groupId> <groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId> <artifactId>jjwt-api</artifactId>
<version>${jjwt.version}</version> <version>${jjwt.version}</version>
</dependency> </dependency>
<!-- fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>
<!-- MVC数据校验框架 --> <!-- MVC数据校验框架 -->
<dependency> <dependency>
@ -193,11 +186,6 @@
<artifactId>reflectasm</artifactId> <artifactId>reflectasm</artifactId>
<version>${reflectasm.version}</version> <version>${reflectasm.version}</version>
</dependency> </dependency>
<dependency>
<groupId>com.alibaba.boot</groupId>
<artifactId>dubbo-spring-boot-starter</artifactId>
<version>${dubbo-spring-boot-starter.version}</version>
</dependency>
<!-- springboot mybatis-plus--> <!-- springboot mybatis-plus-->
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
@ -279,35 +267,17 @@
</plugins> </plugins>
</pluginManagement> </pluginManagement>
</build> </build>
<repositories>
<repository>
<id>yexuejc-nexus-public</id>
<name>yexuejc-nexus-public</name>
<url>${repos.yexuejc.url}maven-public/</url>
</repository>
<repository>
<id>aliyun-nexus-public</id>
<name>aliyun-nexus-public</name>
<url>${repos.aliyun.url}</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>${repos.jitpack.url}</url>
</repository>
</repositories>
<!-- 中间件jar包发布目标 --> <!-- 中间件jar包发布目标 -->
<distributionManagement> <distributionManagement>
<repository> <repository>
<id>releases</id> <id>releases</id>
<name>nexus-release</name> <name>nexus-release</name>
<url>${repos.yexuejc.url}maven-releases/</url> <url>https://nexus.yexuejc.top/repository/maven-releases/</url>
</repository> </repository>
<snapshotRepository> <snapshotRepository>
<id>snapshots</id> <id>snapshots</id>
<name>nexus-snapshots</name> <name>nexus-snapshots</name>
<url>${repos.yexuejc.url}maven-snapshots/</url> <url>https://nexus.yexuejc.top/repository/maven-snapshots/</url>
</snapshotRepository> </snapshotRepository>
</distributionManagement> </distributionManagement>
</project> </project>

View File

@ -9,27 +9,19 @@
<parent> <parent>
<groupId>com.yexuejc.springboot</groupId> <groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-parent</artifactId> <artifactId>yexuejc-springboot-parent</artifactId>
<version>2.1.2</version> <version>2.1.3</version>
<!-- 本地打包:使用相对关联路径 --> <!-- 本地打包:使用相对关联路径 -->
<!--<relativePath>../</relativePath>--> <!--<relativePath>../</relativePath>-->
</parent> </parent>
<name>${project.artifactId}</name> <name>${project.artifactId}</name>
<!--<properties>-->
<!--<main.basedir>${basedir}/..</main.basedir>-->
<!--</properties>-->
<dependencies> <dependencies>
<!--基础包--> <!--基础包-->
<dependency> <dependency>
<groupId>top.yexuejc</groupId> <groupId>top.yexuejc</groupId>
<artifactId>yexuejc-base</artifactId> <artifactId>yexuejc-base</artifactId>
</dependency> </dependency>
<!--<dependency>-->
<!--<groupId>com.github.yexuejc</groupId>-->
<!--<artifactId>yexuejc-base</artifactId>-->
<!--</dependency>-->
<!-- 使用springMVC --> <!-- 使用springMVC -->
<dependency> <dependency>
@ -65,7 +57,7 @@
<!-- JJWT --> <!-- JJWT -->
<dependency> <dependency>
<groupId>io.jsonwebtoken</groupId> <groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId> <artifactId>jjwt-api</artifactId>
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
<!-- 使用Redis --> <!-- 使用Redis -->

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model; import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.yexuejc.base.util.JsonUtil; import com.yexuejc.base.util.JsonUtil;
import com.yexuejc.springboot.base.mapper.handler.JsonTypeHandler;
import com.yexuejc.springboot.base.security.inte.User; import com.yexuejc.springboot.base.security.inte.User;
import java.io.Serializable; import java.io.Serializable;
@ -27,7 +28,7 @@ public class Consumer extends Model<Consumer> implements User {
/** /**
* 用户id * 用户id
*/ */
@TableId(value = "consumer_id", type = IdType.UUID) @TableId(value = "consumer_id", type = IdType.ASSIGN_UUID)
private String consumerId; private String consumerId;
/** /**
* 手机号 * 手机号
@ -92,7 +93,7 @@ public class Consumer extends Model<Consumer> implements User {
/** /**
* 角色权限 * 角色权限
*/ */
@TableField(value = "roles", el = "roles,typeHandler=com.yexuejc.guansc.core.mybatis.handler.JsonTypeHandler") @TableField(value = "roles", typeHandler = JsonTypeHandler.class)
private List<String> roles; private List<String> roles;
/** /**
* 支付密码 * 支付密码
@ -157,19 +158,16 @@ public class Consumer extends Model<Consumer> implements User {
return this; return this;
} }
public Consumer setEnable(boolean enable) { public Consumer setEnable(boolean enable) {
this.enable = enable; this.enable = enable;
return this; return this;
} }
public Consumer setNonExpire(boolean nonExpire) { public Consumer setNonExpire(boolean nonExpire) {
this.nonExpire = nonExpire; this.nonExpire = nonExpire;
return this; return this;
} }
public Consumer setNonLock(boolean nonLock) { public Consumer setNonLock(boolean nonLock) {
this.nonLock = nonLock; this.nonLock = nonLock;
return this; return this;
@ -276,7 +274,7 @@ public class Consumer extends Model<Consumer> implements User {
} }
@Override @Override
protected Serializable pkVal() { public Serializable pkVal() {
return this.consumerId; return this.consumerId;
} }
} }

View File

@ -7,11 +7,9 @@ import com.yexuejc.base.util.JsonUtil;
import com.yexuejc.base.util.StrUtil; import com.yexuejc.base.util.StrUtil;
import com.yexuejc.springboot.base.ApplicationRun; import com.yexuejc.springboot.base.ApplicationRun;
import com.yexuejc.springboot.base.filter.RsaProperties; import com.yexuejc.springboot.base.filter.RsaProperties;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.io.IOException; import java.io.IOException;
import java.security.KeyStoreException; import java.security.KeyStoreException;
@ -19,14 +17,12 @@ import java.security.NoSuchAlgorithmException;
import java.security.UnrecoverableKeyException; import java.security.UnrecoverableKeyException;
import java.security.cert.CertificateException; import java.security.cert.CertificateException;
import java.security.spec.InvalidKeySpecException; import java.security.spec.InvalidKeySpecException;
import java.util.Base64;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = ApplicationRun.class) @SpringBootTest(classes = ApplicationRun.class)
public class ApplicationTest { public class ApplicationTest {
@Autowired @Autowired
@ -76,10 +72,8 @@ public class ApplicationTest {
// String strData = "HgTMgxEEFSr6zRLvZQ3U5CAKjJqwKf0lfruZTi32iWObkbJA5mHuOTKU4rXYkej4UsPfArYUA45GfxatwFoB4Q"; // String strData = "HgTMgxEEFSr6zRLvZQ3U5CAKjJqwKf0lfruZTi32iWObkbJA5mHuOTKU4rXYkej4UsPfArYUA45GfxatwFoB4Q";
String strData = "K9Zyg82WDvIApFmXTxPwjQw_VA041jfBcxMIP6jpMM6xWe1XajGf3__7DqSLrS9MwCra9cYkidcjVJAKZn9cmQ"; String strData = "K9Zyg82WDvIApFmXTxPwjQw_VA041jfBcxMIP6jpMM6xWe1XajGf3__7DqSLrS9MwCra9cYkidcjVJAKZn9cmQ";
String mapData = "cEPfMp7-rim76XFdbNDSIzDRXyHySpz0VOZP6HC8U-JPl-ZxNZKp6ethEQWWITcuUPzIhp4fHiGKNsHA7F6OxCxibpMLj5-ZsgJJvcczw8Liens5kYgciRF1UziR3LFy6vybN9H1CJnqXaddbl3t_41P-_1l5Ev7YYa8woWp7ulaRPeTCDjohEpmx2Vi6aPSrm3hjjmitkD9gb0O6vFDNnclyNhFepKV3oh93tNv50sEQQ_QSBUXSHUtCnhTiBX8VsRX3h58F2tie7bG8VSk-6KFuXI07OiqFZSNpcwDOuq-GfMlEfPL3pX-gYhoOORPNClRlQHwyfHXBJly3gRtNVpVksHWQjr1xutWgYfwRjQPHBHNZwfx4E0XoCTuz9qH1CzFmmz68i63GzCM286zJ-J26MkiTDO1zH4jhglo38tnzz9HLeDcbbCuJg1jzkvpFiWamM-6odWhtCg65BS1tJJVWg023kWygZMu5Ebrm5WBbbatN87_K5zn211tFpKwRq2oVjO_AfJRY90WlQGEIHnzZNz_cf8mAjlmilHDuNdjYlj3axTUqLfgLDVaIkasREnjMI7oe8oAtG2ju2aq-xSAQZ_U-7-rsyBpoy0jnwRmlyUxhXgIX0zrfBQNXEjzPtg-iJ14R5qz1iOAJL7NtQQeuYngGTj6msDlKGEd_MQTLAFDbpiVPwWX00jLT1Ll3_zhivpPCUAmC8Yz58khkqrqi4FdIxJTDkxd0PFOBH8DYicF7ls4UdOHT24mAKDwUF_TfZ32oiiKSzCD9MJB8GEXjzx7tDFok-HsdOjI6ZnSUJCOTj3wne2E6_a8Gq2_vp5CWyW12wthJbH79aa7JVfy5cx-cZmNid7oCe54KYclz1tdUgLPCQ1ajsEevbRJ_NBkTmY2wAmUpHODeocDaYt_2AwAU2DLiv2uZuaVszNSUy593Zrzxq5AaY-oWbEeD24SyEWJObJtz5knYzr4NxjZShcjx9ezwiwkRZMtLZpA_cCPFAK1nOrN8zHCOZquS17CCSLDySLvGbxNqYeBa_lGSq8cQuQo8yybd1WkuLKUjUiJecmH2XcZNTPCtdRe0eLlRtk5928AQGsQugwSig"; String mapData = "cEPfMp7-rim76XFdbNDSIzDRXyHySpz0VOZP6HC8U-JPl-ZxNZKp6ethEQWWITcuUPzIhp4fHiGKNsHA7F6OxCxibpMLj5-ZsgJJvcczw8Liens5kYgciRF1UziR3LFy6vybN9H1CJnqXaddbl3t_41P-_1l5Ev7YYa8woWp7ulaRPeTCDjohEpmx2Vi6aPSrm3hjjmitkD9gb0O6vFDNnclyNhFepKV3oh93tNv50sEQQ_QSBUXSHUtCnhTiBX8VsRX3h58F2tie7bG8VSk-6KFuXI07OiqFZSNpcwDOuq-GfMlEfPL3pX-gYhoOORPNClRlQHwyfHXBJly3gRtNVpVksHWQjr1xutWgYfwRjQPHBHNZwfx4E0XoCTuz9qH1CzFmmz68i63GzCM286zJ-J26MkiTDO1zH4jhglo38tnzz9HLeDcbbCuJg1jzkvpFiWamM-6odWhtCg65BS1tJJVWg023kWygZMu5Ebrm5WBbbatN87_K5zn211tFpKwRq2oVjO_AfJRY90WlQGEIHnzZNz_cf8mAjlmilHDuNdjYlj3axTUqLfgLDVaIkasREnjMI7oe8oAtG2ju2aq-xSAQZ_U-7-rsyBpoy0jnwRmlyUxhXgIX0zrfBQNXEjzPtg-iJ14R5qz1iOAJL7NtQQeuYngGTj6msDlKGEd_MQTLAFDbpiVPwWX00jLT1Ll3_zhivpPCUAmC8Yz58khkqrqi4FdIxJTDkxd0PFOBH8DYicF7ls4UdOHT24mAKDwUF_TfZ32oiiKSzCD9MJB8GEXjzx7tDFok-HsdOjI6ZnSUJCOTj3wne2E6_a8Gq2_vp5CWyW12wthJbH79aa7JVfy5cx-cZmNid7oCe54KYclz1tdUgLPCQ1ajsEevbRJ_NBkTmY2wAmUpHODeocDaYt_2AwAU2DLiv2uZuaVszNSUy593Zrzxq5AaY-oWbEeD24SyEWJObJtz5knYzr4NxjZShcjx9ezwiwkRZMtLZpA_cCPFAK1nOrN8zHCOZquS17CCSLDySLvGbxNqYeBa_lGSq8cQuQo8yybd1WkuLKUjUiJecmH2XcZNTPCtdRe0eLlRtk5928AQGsQugwSig";
// String listData = "X65trOhRSpeaN-2qP0zhdYi2jeJDcrTz2JHkc6UFG17xAho-VO0fkD0cA8wxoxcqyTaulOiSzaidZ2VeIvKjuinlKT2r23kdMJxjJodOZojssxgGSxm5gnry2tq5X8dbP7n-jodvAvLE9Gtq7AaBQ36ZQBQ2RcFB3TiHKHGin0gfn6T6A80orYD7i-Bdc0rh_pBEdLwGt1wWY_C8QuxeBmMWh0jmLVfpa3ZZOXVc9I7wIxzc1taQ7f-8Om9SNfXc"; // String listData = "X65trOhRSpeaN-2qP0zhdYi2jeJDcrTz2JHkc6UFG17xAho-VO0fkD0cA8wxoxcqyTaulOiSzaidZ2VeIvKjuinlKT2r23kdMJxjJodOZojssxgGSxm5gnry2tq5X8dbP7n-jodvAvLE9Gtq7AaBQ36ZQBQ2RcFB3TiHKHGin0gfn6T6A80orYD7i-Bdc0rh_pBEdLwGt1wWY_C8QuxeBmMWh0jmLVfpa3ZZOXVc9I7wIxzc1taQ7f-8Om9SNfXc";
String listData = "Sf_FO8YC9EUNTeM0n9EVuDzwvLz3DcxOuG4-5UZ9486lLHAx7IOuAhPgVHpQGsQiqJ7Y3fTaWFr6rRFPL12rVg"; String listData = "Sf_FO8YC9EUNTeM0n9EVuDzwvLz3DcxOuG4-5UZ9486lLHAx7IOuAhPgVHpQGsQiqJ7Y3fTaWFr6rRFPL12rVg";
@ -107,7 +101,6 @@ public class ApplicationTest {
) )
).isEqualTo("f721e7b0d5415302f5fe7dc5beb2938a"); ).isEqualTo("f721e7b0d5415302f5fe7dc5beb2938a");
//list //list
assertThat( assertThat(
StrUtil.toMD5( StrUtil.toMD5(
@ -120,7 +113,6 @@ public class ApplicationTest {
} }
/** /**
* 证书操作 * 证书操作
* *
@ -142,15 +134,13 @@ public class ApplicationTest {
// String dataStr = "{\"ret\":\"0\",\"expireTime\":\"2015/10/28 23:59:59\",\"rettxt\":\"OK\",\"token\":\"69296128A59798E2D423D3B1A9F766F4\"}"; // String dataStr = "{\"ret\":\"0\",\"expireTime\":\"2015/10/28 23:59:59\",\"rettxt\":\"OK\",\"token\":\"69296128A59798E2D423D3B1A9F766F4\"}";
String dataStr = "{\"foodsCode\":\"49\",\"latlng\":\"22.5,114.0\",\"pageIndex\":1,\"pageSize\":10}"; String dataStr = "{\"foodsCode\":\"49\",\"latlng\":\"22.5,114.0\",\"pageIndex\":1,\"pageSize\":10}";
/***************************************************************************************************************************************************************************************************************************************/ /***************************************************************************************************************************************************************************************************************************************/
//客户端公钥加密 //客户端公钥加密
// String publicEncryptResult = RSA.publicEncrypt(dataStr, RSA2.getPublicKey(publicKey)); // String publicEncryptResult = RSA.publicEncrypt(dataStr, RSA2.getPublicKey(publicKey));
// System.out.println(publicEncryptResult); // System.out.println(publicEncryptResult);
// System.out.println(StrUtil.toMD5(dataStr)); // System.out.println(StrUtil.toMD5(dataStr));
String publicEncryptResult="KHAtNzGkT/Mn7d/Ei6aoZ8KCA04mYJi5b/sxt/Jgzq76jNi0O/EMACDsipgQuwZTJrrys5xOPyy4\n1Gf8LMEldZE3GeY3i92A5jnH7IeWnLojYhNaKdIuLuf4l5uJmFgpzxhoxqSkp2JJ5Vbt8j5Hy4ov\n7tfxPDBwnT6FSfDqGLU\u003d\n"; String publicEncryptResult = "KHAtNzGkT/Mn7d/Ei6aoZ8KCA04mYJi5b/sxt/Jgzq76jNi0O/EMACDsipgQuwZTJrrys5xOPyy4\n1Gf8LMEldZE3GeY3i92A5jnH7IeWnLojYhNaKdIuLuf4l5uJmFgpzxhoxqSkp2JJ5Vbt8j5Hy4ov\n7tfxPDBwnT6FSfDqGLU\u003d\n";
//服务器私钥解密 //服务器私钥解密
String privateDecryptResult = RSA.privateDecrypt(publicEncryptResult, RSA2.getPrivateKey(privateKey, privateAlias, privatePwd)); String privateDecryptResult = RSA.privateDecrypt(publicEncryptResult, RSA2.getPrivateKey(privateKey, privateAlias, privatePwd));
@ -168,9 +158,9 @@ public class ApplicationTest {
} }
/** /**
* key加解密 * key加解密
*
* @throws NoSuchAlgorithmException * @throws NoSuchAlgorithmException
* @throws InvalidKeySpecException * @throws InvalidKeySpecException
*/ */
@ -179,7 +169,6 @@ public class ApplicationTest {
String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCX9uSsfJeIDIPzxCtwwFh5vrIKar69i3DPUTDEiKPRdtmADa8Ls6KAsPVpzgtQYoYVpYBoMbBtp0cGRoQULO83NWIAhmsU2cvd0nmGlB2xPRz+uGYW1rsYyCM8RSvfAwCVNsJD10A9voLhRQuYHPIDmay1sBA/casvEvYwMqDZtQIDAQAB"; String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCX9uSsfJeIDIPzxCtwwFh5vrIKar69i3DPUTDEiKPRdtmADa8Ls6KAsPVpzgtQYoYVpYBoMbBtp0cGRoQULO83NWIAhmsU2cvd0nmGlB2xPRz+uGYW1rsYyCM8RSvfAwCVNsJD10A9voLhRQuYHPIDmay1sBA/casvEvYwMqDZtQIDAQAB";
System.out.println(publicKey.length()); System.out.println(publicKey.length());
// String privateKey = "MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAiSo5blJ9-QJ0_QElcy5AaRTq-3oO4lJ8PvIOIt-Xr5SUFODVj3DUbiy6_0bxQYO3NiYHlXPb37UVV3jjlXJsXwIDAQABAkBE0WOJH2hGs93gRl_0vwLf9ffDfkTTdlER_73p70aad3QZRslEkinQH7G5aE_DgBm5m72TCeH-PD2FZ2lwtavBAiEAvnRown5Lpqbl0tN_OUxr_e1u9d_-8dNL_JEETO7BZCECIQC4XtY-18j0bVVLxaXPjKQ00D59yntwObihDNyRK0nAfwIgHPHEGgrnpGQo-Wl7JFIg925mNqfcLxRVsAS6CpcefQECIQCUsLdsmy6QIhTmNRJSXoSXq1KatE_05DhIekzwLs8eFQIgfMawMiu52ZxBI5_pZ7ancQZ6Dsxl45utFqJShzV1pio"; // String privateKey = "MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAiSo5blJ9-QJ0_QElcy5AaRTq-3oO4lJ8PvIOIt-Xr5SUFODVj3DUbiy6_0bxQYO3NiYHlXPb37UVV3jjlXJsXwIDAQABAkBE0WOJH2hGs93gRl_0vwLf9ffDfkTTdlER_73p70aad3QZRslEkinQH7G5aE_DgBm5m72TCeH-PD2FZ2lwtavBAiEAvnRown5Lpqbl0tN_OUxr_e1u9d_-8dNL_JEETO7BZCECIQC4XtY-18j0bVVLxaXPjKQ00D59yntwObihDNyRK0nAfwIgHPHEGgrnpGQo-Wl7JFIg925mNqfcLxRVsAS6CpcefQECIQCUsLdsmy6QIhTmNRJSXoSXq1KatE_05DhIekzwLs8eFQIgfMawMiu52ZxBI5_pZ7ancQZ6Dsxl45utFqJShzV1pio";
//// String publicKey = "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIkqOW5SffkCdP0BJXMuQGkU6vt6DuJSfD7yDiLfl6-UlBTg1Y9w1G4suv9G8UGDtzYmB5Vz29-1FVd445VybF8CAwEAAQ"; //// String publicKey = "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIkqOW5SffkCdP0BJXMuQGkU6vt6DuJSfD7yDiLfl6-UlBTg1Y9w1G4suv9G8UGDtzYmB5Vz29-1FVd445VybF8CAwEAAQ";
// String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCX9uSsfJeIDIPzxCtwwFh5vrIKar69i3DPUTDEiKPRdtmADa8Ls6KAsPVpzgtQYoYVpYBoMbBtp0cGRoQULO83NWIAhmsU2cvd0nmGlB2xPRz+uGYW1rsYyCM8RSvfAwCVNsJD10A9voLhRQuYHPIDmay1sBA/casvEvYwMqDZtQIDAQAB"; // String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCX9uSsfJeIDIPzxCtwwFh5vrIKar69i3DPUTDEiKPRdtmADa8Ls6KAsPVpzgtQYoYVpYBoMbBtp0cGRoQULO83NWIAhmsU2cvd0nmGlB2xPRz+uGYW1rsYyCM8RSvfAwCVNsJD10A9voLhRQuYHPIDmay1sBA/casvEvYwMqDZtQIDAQAB";

View File

@ -1,7 +1,5 @@
package com.yexuejc.springboot.base.test; package com.yexuejc.springboot.base.test;
import sun.misc.BASE64Encoder;
import java.io.*; import java.io.*;
import java.security.KeyStore; import java.security.KeyStore;
import java.security.PrivateKey; import java.security.PrivateKey;
@ -9,8 +7,11 @@ import java.security.PublicKey;
import java.security.cert.Certificate; import java.security.cert.Certificate;
import java.security.cert.CertificateException; import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory; import java.security.cert.CertificateFactory;
import java.util.Base64;
/** /**
* 生成公钥工具; http://bijian1013.iteye.com/blog/2339874 * 生成公钥工具; http://bijian1013.iteye.com/blog/2339874
*
* @ClassName: KeyStoreHelper * @ClassName: KeyStoreHelper
* @Description: * @Description:
* @author: maxf * @author: maxf
@ -33,7 +34,7 @@ public class KeyStoreHelper {
byte[] publicKeyBytes = publicKey.getEncoded(); byte[] publicKeyBytes = publicKey.getEncoded();
// byte[] privateKeyBytes = privateKey.getEncoded(); // byte[] privateKeyBytes = privateKey.getEncoded();
String publicKeyBase64 = new BASE64Encoder().encode(publicKeyBytes); String publicKeyBase64 = Base64.getEncoder().encodeToString(publicKeyBytes);
// String privateKeyBase64 = new BASE64Encoder().encode(privateKeyBytes); // String privateKeyBase64 = new BASE64Encoder().encode(privateKeyBytes);
System.out.println("publicKeyBase64.length():" + publicKeyBase64.length()); System.out.println("publicKeyBase64.length():" + publicKeyBase64.length());

View File

@ -4,11 +4,9 @@ import com.aliyun.mns.model.Message;
import com.yexuejc.base.util.JsonUtil; import com.yexuejc.base.util.JsonUtil;
import com.yexuejc.base.util.StrUtil; import com.yexuejc.base.util.StrUtil;
import com.yexuejc.springboot.base.autoconfigure.MnsFacade; import com.yexuejc.springboot.base.autoconfigure.MnsFacade;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
@ -20,7 +18,6 @@ import java.util.Map;
* @Description * @Description
* @date 2018/11/1 14:25 * @date 2018/11/1 14:25
*/ */
@RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
public class MnsTest { public class MnsTest {

View File

@ -6,11 +6,9 @@ import com.yexuejc.base.util.StrUtil;
import com.yexuejc.springboot.base.autoconfigure.OssFacade; import com.yexuejc.springboot.base.autoconfigure.OssFacade;
import com.yexuejc.springboot.base.exception.ImageException; import com.yexuejc.springboot.base.exception.ImageException;
import com.yexuejc.springboot.base.util.LogUtil; import com.yexuejc.springboot.base.util.LogUtil;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.io.ByteArrayInputStream; import java.io.ByteArrayInputStream;
import java.io.IOException; import java.io.IOException;
@ -23,7 +21,6 @@ import java.io.InputStream;
* @Description * @Description
* @date 2018/11/1 14:58 * @date 2018/11/1 14:58
*/ */
@RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
public class OssTest { public class OssTest {
@Autowired @Autowired
@ -32,11 +29,11 @@ public class OssTest {
/** /**
* 上传图片到oss * 上传图片到oss
* <p> * <p>
* 这里是模拟微信登录时获取到微信头像地址缓存到base64然后上传到OSS * 这里是模拟微信登录时获取到微信头像地址缓存到base64然后上传到OSS
* </p> * </p>
*/ */
@Test @Test
public void put(){ public void put() {
putOss4Head(null, "https://avatar.csdn.net/7/8/1/3_wulex.jpg"); putOss4Head(null, "https://avatar.csdn.net/7/8/1/3_wulex.jpg");
} }

View File

@ -3,8 +3,7 @@ package com.yexuejc.springboot.base.test;
import com.yexuejc.base.util.JsonUtil; import com.yexuejc.base.util.JsonUtil;
import com.yexuejc.base.util.StrUtil; import com.yexuejc.base.util.StrUtil;
import com.yexuejc.springboot.base.autoconfigure.MutiRedisAutoConfiguration; import com.yexuejc.springboot.base.autoconfigure.MutiRedisAutoConfiguration;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
@ -24,7 +23,6 @@ import java.util.concurrent.TimeUnit;
* @Description * @Description
* @date 2018/11/1 11:16 * @date 2018/11/1 11:16
*/ */
@RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
public class RedisTest { public class RedisTest {
/** /**

View File

@ -7,21 +7,21 @@ logging.path=/logs/yexuejc-springboot-parent
#======================================================================================================================== #========================================================================================================================
#======================================================================================================================== #========================================================================================================================
#核心 #\u6838\u5FC3
#开启功能 redis webmvc #\u5F00\u542F\u529F\u80FD redis webmvc
yexuejc.autoconfigure.redis.enable=true yexuejc.autoconfigure.redis.enable=true
#webmvc 包含以下功能 #webmvc \u5305\u542B\u4EE5\u4E0B\u529F\u80FD
yexuejc.autoconfigure.webmvc.enable=true yexuejc.autoconfigure.webmvc.enable=true
#全局异常处理 #\u5168\u5C40\u5F02\u5E38\u5904\u7406
yexuejc.ssl-ignore.enable=true yexuejc.ssl-ignore.enable=true
#开启HTTPSSSL请求证书验证忽略 #\u5F00\u542FHTTPS\uFF08SSL\uFF09\u8BF7\u6C42\u8BC1\u4E66\u9A8C\u8BC1\u5FFD\u7565
yexuejc.global.exception.enable=true yexuejc.global.exception.enable=true
#开启校验过滤器目前校验HTTP Header是否符合规范 #\u5F00\u542F\u6821\u9A8C\u8FC7\u6EE4\u5668\uFF0C\u76EE\u524D\u6821\u9A8CHTTP Header\u662F\u5426\u7B26\u5408\u89C4\u8303
yexuejc.web.validation-filter.enable=true yexuejc.web.validation-filter.enable=true
# 拦截类型请求路径0忽略模式默认拦截全部1拦截模式默认一个都不拦截 # \u62E6\u622A\u7C7B\u578B\uFF08\u8BF7\u6C42\u8DEF\u5F84\uFF09\uFF1A0\u5FFD\u7565\u6A21\u5F0F\uFF0C\u9ED8\u8BA4\u62E6\u622A\u5168\u90E8\uFF1B1\u62E6\u622A\u6A21\u5F0F\uFF0C\u9ED8\u8BA4\u4E00\u4E2A\u90FD\u4E0D\u62E6\u622A
#yexuejc.http.filter=0 #yexuejc.http.filter=0
yexuejc.http.filter.type=1 yexuejc.http.filter.type=1
#忽略路径:示例放开swagger #\u5FFD\u7565\u8DEF\u5F84\uFF1A\u793A\u4F8B\u653E\u5F00swagger
#yexuejc.http.filter.ignored=/,/swagger/**,/error,/v2/api-docs,/webjars/** #yexuejc.http.filter.ignored=/,/swagger/**,/error,/v2/api-docs,/webjars/**
#======================================================================================================================== #========================================================================================================================
#======================================================================================================================== #========================================================================================================================
@ -29,22 +29,22 @@ yexuejc.http.filter.type=1
yexuejc.http.encrypt.encrypt=true yexuejc.http.encrypt.encrypt=true
yexuejc.http.encrypt.decrypt=true yexuejc.http.encrypt.decrypt=true
#配置密钥方式 #\u914D\u7F6E\u5BC6\u94A5\u65B9\u5F0F
#yexuejc.http.encrypt.private-key=MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAiSo5blJ9-QJ0_QElcy5AaRTq-3oO4lJ8PvIOIt-Xr5SUFODVj3DUbiy6_0bxQYO3NiYHlXPb37UVV3jjlXJsXwIDAQABAkBE0WOJH2hGs93gRl_0vwLf9ffDfkTTdlER_73p70aad3QZRslEkinQH7G5aE_DgBm5m72TCeH-PD2FZ2lwtavBAiEAvnRown5Lpqbl0tN_OUxr_e1u9d_-8dNL_JEETO7BZCECIQC4XtY-18j0bVVLxaXPjKQ00D59yntwObihDNyRK0nAfwIgHPHEGgrnpGQo-Wl7JFIg925mNqfcLxRVsAS6CpcefQECIQCUsLdsmy6QIhTmNRJSXoSXq1KatE_05DhIekzwLs8eFQIgfMawMiu52ZxBI5_pZ7ancQZ6Dsxl45utFqJShzV1pio #yexuejc.http.encrypt.private-key=MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAiSo5blJ9-QJ0_QElcy5AaRTq-3oO4lJ8PvIOIt-Xr5SUFODVj3DUbiy6_0bxQYO3NiYHlXPb37UVV3jjlXJsXwIDAQABAkBE0WOJH2hGs93gRl_0vwLf9ffDfkTTdlER_73p70aad3QZRslEkinQH7G5aE_DgBm5m72TCeH-PD2FZ2lwtavBAiEAvnRown5Lpqbl0tN_OUxr_e1u9d_-8dNL_JEETO7BZCECIQC4XtY-18j0bVVLxaXPjKQ00D59yntwObihDNyRK0nAfwIgHPHEGgrnpGQo-Wl7JFIg925mNqfcLxRVsAS6CpcefQECIQCUsLdsmy6QIhTmNRJSXoSXq1KatE_05DhIekzwLs8eFQIgfMawMiu52ZxBI5_pZ7ancQZ6Dsxl45utFqJShzV1pio
#yexuejc.http.encrypt.public-key=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIkqOW5SffkCdP0BJXMuQGkU6vt6DuJSfD7yDiLfl6-UlBTg1Y9w1G4suv9G8UGDtzYmB5Vz29-1FVd445VybF8CAwEAAQ #yexuejc.http.encrypt.public-key=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIkqOW5SffkCdP0BJXMuQGkU6vt6DuJSfD7yDiLfl6-UlBTg1Y9w1G4suv9G8UGDtzYmB5Vz29-1FVd445VybF8CAwEAAQ
#配置证书方式 #\u914D\u7F6E\u8BC1\u4E66\u65B9\u5F0F
yexuejc.http.encrypt.private-key-path=/lgfishing.keystore yexuejc.http.encrypt.private-key-path=/lgfishing.keystore
yexuejc.http.encrypt.private-alias=lgfishing yexuejc.http.encrypt.private-alias=lgfishing
yexuejc.http.encrypt.private-pwd=lgfishing2018 yexuejc.http.encrypt.private-pwd=lgfishing2018
#编码 #\u7F16\u7801
spring.http.encoding.force=true spring.http.encoding.force=true
spring.http.encoding.charset=UTF-8 spring.http.encoding.charset=UTF-8
spring.http.encoding.enabled=true spring.http.encoding.enabled=true
server.tomcat.uri-encoding=UTF-8 server.tomcat.uri-encoding=UTF-8
#是否开启HTTPSSSL请求证书验证忽略默认false #\u662F\u5426\u5F00\u542FHTTPS\uFF08SSL\uFF09\u8BF7\u6C42\u8BC1\u4E66\u9A8C\u8BC1\u5FFD\u7565\uFF1A\u9ED8\u8BA4false
yexuejc.enable.ssl-ignore=true yexuejc.enable.ssl-ignore=true
@ -66,16 +66,16 @@ yexuejc.alibaba.oss.bucket=guansichou
#======================================================================================================================== #========================================================================================================================
# security相关 # security\u76F8\u5173
#reids #reids
#开启指定redis库db0默认开启 #\u5F00\u542F\u6307\u5B9Aredis\u5E93db0\u9ED8\u8BA4\u5F00\u542F
yexuejc.redis.db1=true yexuejc.redis.db1=true
spring.redis.jedis.pool.max-active=100 spring.redis.jedis.pool.max-active=100
spring.redis.jedis.pool.max-idle=10 spring.redis.jedis.pool.max-idle=10
spring.redis.jedis.pool.min-idle=3 spring.redis.jedis.pool.min-idle=3
spring.redis.host=121.42.165.89 spring.redis.host=192.168.0.107
spring.redis.password= spring.redis.password=yexuejc2022
spring.redis.port=16379 spring.redis.port=6379
#db #db
@ -93,19 +93,19 @@ spring.datasource.data=classpath:db/data.sql
#======================================================================================================================== #========================================================================================================================
#mybatis-plus #mybatis-plus
mybatis-plus.mapper-locations=classpath*:mapper/*.xml mybatis-plus.mapper-locations=classpath*:mapper/*.xml
#实体扫描多个package用逗号或者分号分隔 #\u5B9E\u4F53\u626B\u63CF\uFF0C\u591A\u4E2Apackage\u7528\u9017\u53F7\u6216\u8005\u5206\u53F7\u5206\u9694
mybatis-plus.type-aliases-package=com.yexuejc.springboot.base.security.domain mybatis-plus.type-aliases-package=com.yexuejc.springboot.base.security.domain
#主键类型0:"数据库ID自增", 1:"用户输入ID",2:"该类型为未设置主键类型", 3:"全局唯一ID UUID",4:全局唯一ID (UUID),5:字符串全局唯一ID (idWorker 的字符串表示); #\u4E3B\u952E\u7C7B\u578B0:"\u6570\u636E\u5E93ID\u81EA\u589E", 1:"\u7528\u6237\u8F93\u5165ID",2:"\u8BE5\u7C7B\u578B\u4E3A\u672A\u8BBE\u7F6E\u4E3B\u952E\u7C7B\u578B", 3:"\u5168\u5C40\u552F\u4E00ID UUID",4:\u5168\u5C40\u552F\u4E00ID (UUID),5:\u5B57\u7B26\u4E32\u5168\u5C40\u552F\u4E00ID (idWorker \u7684\u5B57\u7B26\u4E32\u8868\u793A);
mybatis-plus.global-config.db-config.id-type=uuid mybatis-plus.global-config.db-config.id-type=uuid
mybatis-plus.global-config.db-config.db-type=POSTGRE_SQL mybatis-plus.global-config.db-config.db-type=POSTGRE_SQL
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断" #\u5B57\u6BB5\u7B56\u7565 0:"\u5FFD\u7565\u5224\u65AD",1:"\u975E NULL \u5224\u65AD"),2:"\u975E\u7A7A\u5224\u65AD"
mybatis-plus.global-config.db-config.field-strategy=not_empty mybatis-plus.global-config.db-config.field-strategy=not_empty
#驼峰下划线转换 #\u9A7C\u5CF0\u4E0B\u5212\u7EBF\u8F6C\u6362
mybatis-plus.global-config.db-config.column-underline=true mybatis-plus.global-config.db-config.column-underline=true
#逻辑删除配置下面3个配置 #\u903B\u8F91\u5220\u9664\u914D\u7F6E\uFF08\u4E0B\u97623\u4E2A\u914D\u7F6E\uFF09
mybatis-plus.global-config.db-config.logic-delete-value=true mybatis-plus.global-config.db-config.logic-delete-value=true
mybatis-plus.global-config.db-config.logic-not-delete-value=false mybatis-plus.global-config.db-config.logic-not-delete-value=false
#配置返回数据库(column下划线命名&&返回java实体是驼峰命名)自动匹配无需as没开启这个SQL需要写as select user_id as userId #\u914D\u7F6E\u8FD4\u56DE\u6570\u636E\u5E93(column\u4E0B\u5212\u7EBF\u547D\u540D&&\u8FD4\u56DEjava\u5B9E\u4F53\u662F\u9A7C\u5CF0\u547D\u540D)\uFF0C\u81EA\u52A8\u5339\u914D\u65E0\u9700as\uFF08\u6CA1\u5F00\u542F\u8FD9\u4E2A\uFF0CSQL\u9700\u8981\u5199as\uFF1A select user_id as userId\uFF09
mybatis-plus.configuration.map-underscore-to-camel-case=true mybatis-plus.configuration.map-underscore-to-camel-case=true
mybatis-plus.configuration.cache-enabled=false mybatis-plus.configuration.cache-enabled=false
#======================================================================================================================== #========================================================================================================================

View File

@ -9,8 +9,27 @@
<packaging>pom</packaging> <packaging>pom</packaging>
<name>yexuejc-springboot-example</name> <name>yexuejc-springboot-example</name>
<parent>
<groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-parent</artifactId>
<version>2.1.3</version>
<relativePath>../pom.xml</relativePath>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<maven.compiler.target>${java.version}</maven.compiler.target>
<maven.compiler.source>${java.version}</maven.compiler.source>
<maven.compiler.verbose>true</maven.compiler.verbose>
<yexuejc-springboot.version>${parent.version}</yexuejc-springboot.version>
</properties>
<modules> <modules>
<module>yexuejc-springboot-simple</module> <module>yexuejc-springboot-simple</module>
<module>springboot-security-login-simple</module> <module>springboot-security-login-simple</module>
</modules> </modules>
</project> </project>

View File

@ -13,14 +13,16 @@
https://gitee.com/incloudcode/yexuejc-springboot使用例子 https://gitee.com/incloudcode/yexuejc-springboot使用例子
</description> </description>
<properties>
<yexuejc-springboot.version>${parent.version}</yexuejc-springboot.version>
</properties>
<parent> <parent>
<groupId>com.yexuejc.springboot</groupId> <groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-parent</artifactId> <artifactId>yexuejc-springboot-parent</artifactId>
<version>2.1.1</version> <version>2.1.3</version>
</parent> </parent>
<properties>
<yexuejc.base.version>1.3.9</yexuejc.base.version>
</properties>
<dependencies> <dependencies>
<!--base 引用--> <!--base 引用-->
<dependency> <dependency>
@ -32,7 +34,6 @@
<dependency> <dependency>
<groupId>top.yexuejc</groupId> <groupId>top.yexuejc</groupId>
<artifactId>yexuejc-base</artifactId> <artifactId>yexuejc-base</artifactId>
<version>${yexuejc.base.version}</version>
</dependency> </dependency>
<!-- 使用springMVC --> <!-- 使用springMVC -->
<dependency> <dependency>
@ -47,7 +48,7 @@
<!-- JJWT --> <!-- JJWT -->
<dependency> <dependency>
<groupId>io.jsonwebtoken</groupId> <groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId> <artifactId>jjwt-api</artifactId>
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
<!-- 使用Redis --> <!-- 使用Redis -->
@ -80,13 +81,6 @@
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
</dependencies> </dependencies>
<repositories>
<repository>
<id>yexuejc-nexus-public</id>
<name>yexuejc-nexus-public</name>
<url>https://nexus.yexuejc.club/repository/maven-public/</url>
</repository>
</repositories>
<build> <build>
<plugins> <plugins>

View File

@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model; import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.example.demo.mapper.handler.JsonTypeHandler;
import com.yexuejc.base.util.JsonUtil; import com.yexuejc.base.util.JsonUtil;
import com.yexuejc.springboot.base.security.inte.User; import com.yexuejc.springboot.base.security.inte.User;
@ -27,7 +28,7 @@ public class Consumer extends Model<Consumer> implements User {
/** /**
* 用户id * 用户id
*/ */
@TableId(value = "consumer_id", type = IdType.UUID) @TableId(value = "consumer_id", type = IdType.ASSIGN_UUID)
private String consumerId; private String consumerId;
/** /**
* 手机号 * 手机号
@ -92,7 +93,7 @@ public class Consumer extends Model<Consumer> implements User {
/** /**
* 角色权限 * 角色权限
*/ */
@TableField(value = "roles", el = "roles,typeHandler=com.yexuejc.guansc.core.mybatis.handler.JsonTypeHandler") @TableField(value = "roles", typeHandler = JsonTypeHandler.class)
private List<String> roles; private List<String> roles;
/** /**
* 支付密码 * 支付密码
@ -157,19 +158,16 @@ public class Consumer extends Model<Consumer> implements User {
return this; return this;
} }
public Consumer setEnable(boolean enable) { public Consumer setEnable(boolean enable) {
this.enable = enable; this.enable = enable;
return this; return this;
} }
public Consumer setNonExpire(boolean nonExpire) { public Consumer setNonExpire(boolean nonExpire) {
this.nonExpire = nonExpire; this.nonExpire = nonExpire;
return this; return this;
} }
public Consumer setNonLock(boolean nonLock) { public Consumer setNonLock(boolean nonLock) {
this.nonLock = nonLock; this.nonLock = nonLock;
return this; return this;
@ -275,7 +273,7 @@ public class Consumer extends Model<Consumer> implements User {
} }
@Override @Override
protected Serializable pkVal() { public Serializable pkVal() {
return this.consumerId; return this.consumerId;
} }
} }

View File

@ -1,35 +1,36 @@
server.port=8545
logging.level.root=info logging.level.root=info
#======================================================================================================================== #========================================================================================================================
#======================================================================================================================== #========================================================================================================================
#核心 #\u6838\u5FC3
#开启功能 redis webmvc #\u5F00\u542F\u529F\u80FD redis webmvc
yexuejc.autoconfigure.redis.enable=true yexuejc.autoconfigure.redis.enable=true
#webmvc 包含以下功能 #webmvc \u5305\u542B\u4EE5\u4E0B\u529F\u80FD
yexuejc.autoconfigure.webmvc.enable=true yexuejc.autoconfigure.webmvc.enable=true
#全局异常处理 #\u5168\u5C40\u5F02\u5E38\u5904\u7406
yexuejc.ssl-ignore.enable=true yexuejc.ssl-ignore.enable=true
#开启HTTPSSSL请求证书验证忽略 #\u5F00\u542FHTTPS\uFF08SSL\uFF09\u8BF7\u6C42\u8BC1\u4E66\u9A8C\u8BC1\u5FFD\u7565
yexuejc.global.exception.enable=true yexuejc.global.exception.enable=true
#开启校验过滤器目前校验HTTP Header是否符合规范 #\u5F00\u542F\u6821\u9A8C\u8FC7\u6EE4\u5668\uFF0C\u76EE\u524D\u6821\u9A8CHTTP Header\u662F\u5426\u7B26\u5408\u89C4\u8303
yexuejc.web.validation-filter.enable=true yexuejc.web.validation-filter.enable=true
# 拦截类型请求路径0忽略模式默认拦截全部1拦截模式默认一个都不拦截 # \u62E6\u622A\u7C7B\u578B\uFF08\u8BF7\u6C42\u8DEF\u5F84\uFF09\uFF1A0\u5FFD\u7565\u6A21\u5F0F\uFF0C\u9ED8\u8BA4\u62E6\u622A\u5168\u90E8\uFF1B1\u62E6\u622A\u6A21\u5F0F\uFF0C\u9ED8\u8BA4\u4E00\u4E2A\u90FD\u4E0D\u62E6\u622A
yexuejc.http.filter=0 yexuejc.http.filter=0
#忽略路径:示例放开swagger #\u5FFD\u7565\u8DEF\u5F84\uFF1A\u793A\u4F8B\u653E\u5F00swagger
yexuejc.http.filter.ignored=/,/swagger/**,/error,/v2/api-docs,/webjars/** yexuejc.http.filter.ignored=/,/swagger/**,/error,/v2/api-docs,/webjars/**
#======================================================================================================================== #========================================================================================================================
#======================================================================================================================== #========================================================================================================================
#======================================================================================================================== #========================================================================================================================
# security相关 # security\u76F8\u5173
#reids #reids
#开启指定redis库db0默认开启 #\u5F00\u542F\u6307\u5B9Aredis\u5E93db0\u9ED8\u8BA4\u5F00\u542F
yexuejc.redis.db1=true yexuejc.redis.db1=true
spring.redis.jedis.pool.max-active=100 spring.redis.jedis.pool.max-active=100
spring.redis.jedis.pool.max-idle=10 spring.redis.jedis.pool.max-idle=10
spring.redis.jedis.pool.min-idle=3 spring.redis.jedis.pool.min-idle=3
spring.redis.host=121.42.165.89 spring.redis.host=192.168.0.107
spring.redis.password= spring.redis.password=yexuejc2022
spring.redis.port=16379 spring.redis.port=6379
#db #db
@ -47,19 +48,19 @@ spring.datasource.data=classpath:db/data.sql
#======================================================================================================================== #========================================================================================================================
#mybatis-plus #mybatis-plus
mybatis-plus.mapper-locations=classpath*:mapper/*.xml mybatis-plus.mapper-locations=classpath*:mapper/*.xml
#实体扫描多个package用逗号或者分号分隔 #\u5B9E\u4F53\u626B\u63CF\uFF0C\u591A\u4E2Apackage\u7528\u9017\u53F7\u6216\u8005\u5206\u53F7\u5206\u9694
mybatis-plus.type-aliases-package=com.yexuejc.springboot.base.security.domain mybatis-plus.type-aliases-package=com.yexuejc.springboot.base.security.domain
#主键类型0:"数据库ID自增", 1:"用户输入ID",2:"该类型为未设置主键类型", 3:"全局唯一ID UUID",4:全局唯一ID (UUID),5:字符串全局唯一ID (idWorker 的字符串表示); #\u4E3B\u952E\u7C7B\u578B0:"\u6570\u636E\u5E93ID\u81EA\u589E", 1:"\u7528\u6237\u8F93\u5165ID",2:"\u8BE5\u7C7B\u578B\u4E3A\u672A\u8BBE\u7F6E\u4E3B\u952E\u7C7B\u578B", 3:"\u5168\u5C40\u552F\u4E00ID UUID",4:\u5168\u5C40\u552F\u4E00ID (UUID),5:\u5B57\u7B26\u4E32\u5168\u5C40\u552F\u4E00ID (idWorker \u7684\u5B57\u7B26\u4E32\u8868\u793A);
mybatis-plus.global-config.db-config.id-type=uuid mybatis-plus.global-config.db-config.id-type=uuid
mybatis-plus.global-config.db-config.db-type=POSTGRE_SQL mybatis-plus.global-config.db-config.db-type=POSTGRE_SQL
#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断" #\u5B57\u6BB5\u7B56\u7565 0:"\u5FFD\u7565\u5224\u65AD",1:"\u975E NULL \u5224\u65AD"),2:"\u975E\u7A7A\u5224\u65AD"
mybatis-plus.global-config.db-config.field-strategy=not_empty mybatis-plus.global-config.db-config.field-strategy=not_empty
#驼峰下划线转换 #\u9A7C\u5CF0\u4E0B\u5212\u7EBF\u8F6C\u6362
mybatis-plus.global-config.db-config.column-underline=true mybatis-plus.global-config.db-config.column-underline=true
#逻辑删除配置下面3个配置 #\u903B\u8F91\u5220\u9664\u914D\u7F6E\uFF08\u4E0B\u97623\u4E2A\u914D\u7F6E\uFF09
mybatis-plus.global-config.db-config.logic-delete-value=true mybatis-plus.global-config.db-config.logic-delete-value=true
mybatis-plus.global-config.db-config.logic-not-delete-value=false mybatis-plus.global-config.db-config.logic-not-delete-value=false
#配置返回数据库(column下划线命名&&返回java实体是驼峰命名)自动匹配无需as没开启这个SQL需要写as select user_id as userId #\u914D\u7F6E\u8FD4\u56DE\u6570\u636E\u5E93(column\u4E0B\u5212\u7EBF\u547D\u540D&&\u8FD4\u56DEjava\u5B9E\u4F53\u662F\u9A7C\u5CF0\u547D\u540D)\uFF0C\u81EA\u52A8\u5339\u914D\u65E0\u9700as\uFF08\u6CA1\u5F00\u542F\u8FD9\u4E2A\uFF0CSQL\u9700\u8981\u5199as\uFF1A select user_id as userId\uFF09
mybatis-plus.configuration.map-underscore-to-camel-case=true mybatis-plus.configuration.map-underscore-to-camel-case=true
mybatis-plus.configuration.cache-enabled=false mybatis-plus.configuration.cache-enabled=false
#======================================================================================================================== #========================================================================================================================

View File

@ -1,11 +1,8 @@
package com.example.demo; package com.example.demo;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
public class DemoApplicationTests { public class DemoApplicationTests {

View File

@ -5,7 +5,7 @@
<parent> <parent>
<groupId>com.yexuejc.springboot</groupId> <groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-parent</artifactId> <artifactId>yexuejc-springboot-parent</artifactId>
<version>2.1.1</version> <version>2.1.3</version>
</parent> </parent>
<groupId>top.yexuejc</groupId> <groupId>top.yexuejc</groupId>
<artifactId>yexuejc-springboot-simple</artifactId> <artifactId>yexuejc-springboot-simple</artifactId>
@ -14,14 +14,13 @@
<description>测试工程</description> <description>测试工程</description>
<properties> <properties>
<java.version>1.8</java.version> <yexuejc-springboot.version>${parent.version}</yexuejc-springboot.version>
</properties> </properties>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>com.yexuejc.springboot</groupId> <groupId>com.yexuejc.springboot</groupId>
<artifactId>yexuejc-springboot-base</artifactId> <artifactId>yexuejc-springboot-base</artifactId>
<version>${parent.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>

View File

@ -1,11 +1,8 @@
package top.yexuejc.springboot.simple; package top.yexuejc.springboot.simple;
import org.junit.Test; import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
@RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
public class YexuejcSpringbootSimpleApplicationTests { public class YexuejcSpringbootSimpleApplicationTests {