# springsoter **Repository Path**: itkevin/springsoter ## Basic Information - **Project Name**: springsoter - **Description**: SpringSoter - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-05-29 - **Last Updated**: 2024-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Spring Soter 作者:Kevin > Soter来源于希腊神话:代表安全,保护和拯救的神 * SpringSoter是一个基于 Spring Boot 2的一个后端核心框架,对基础组件做了高度封装 * SpringSoter已推送至阿里云Maven仓库,直接引入减少工程的模块与依赖,可更注重于业务开发 * SpringSoter的依赖树结构图请参考链接:https://www.processon.com/view/link/612885b6f346fb01fa43743b ## 发版步骤: ```sh # 在当前开发分支“feature-1.0.40-kevin”上操作 ➜ springsoter git:(feature-1.0.40-kevin) gss ➜ springsoter git:(feature-1.0.40-kevin) gad ➜ springsoter git:(feature-1.0.40-kevin) gcmsg "测试生产redis架构" ➜ springsoter git:(feature-1.0.40-kevin) gps feature-1.0.40-kevin ➜ springsoter git:(feature-1.0.40-kevin) gck master # 在master分支上操作 ➜ springsoter git:(master) gmg feature-1.0.40-kevin ➜ springsoter git:(master) ./release.sh 1.0.40 ➜ springsoter git:(master) gck -b feature-1.0.41-kevin # 在新分支“feature-1.0.41-kevin”上操作 ➜ springsoter git:(feature-1.0.41-kevin) ./release.sh 1.0.41-SNAPSHOT ``` ## Change Log > **1.0.42(2023.08.07)** - 增加syslog的开关配置 > **1.0.41(2023.06.05)** - 迁移仓库至阿里云云效率 > **1.0.40(2023.03.06)** - 修复1.0.39版的bug > **1.0.39(2023.03.04)** - 优化1.0.38的日志记录功能:去掉SPI方式 > **1.0.38(2023.03.03)** - 新增日志注解@SsLog(businessType = BusinessTypeEnum.INSERT),可以在`Controller`的方法上加上此注解,会自动记录操作日志,具体使用方法,参考[《远盟SpringSoter使用指南》](https://n8tk604pdv.feishu.cn/docs/doccnWiMviOwj3pPAORsUpIO7ce) > **1.0.37(2023.02.02)** - 修复1.0.36版本bug:`@ControllerAdvice`与`swagger3`冲突,导致无法访问`swagger`的UI页面 > **1.0.36(2023.02.02)** - 新增统一处理`Controller`返回,如果不是返回的`R`对象,则自动封装成`R`对象,如果不想被拦截,可以增加注解`@NotControllerResponseAdvice`,以忽略此配置 > **1.0.35(2022.12.29)** - 修改`mybatisplus`插入五元组的逻辑,新增判空条件,如果有值,就不需要设置默认值了 > **1.0.34(2022.11.02)** - 新增幂等判断IdempotentUtil工具类 - 新增xxljob的`xxl.job.executor.address`配置 > **1.0.33(2022.10.19)** - 修改DateUtil和JacksonUtil工具类,增加相关方法的注释 > **1.0.32(2022.10.09)** - 新增文本摘要加密工具类:cn.springsoter.core.tool.utils.MessageDigestUtil,支持JDK自带的加密算法:MD2,MD5,SHA-1,SHA-256,SHA-384,SHA-512。具体查看枚举类:cn.springsoter.core.tool.enums.MessageDigestAlgorithmsEnum > **1.0.31(2022.10.05)** - 新增springsoter-starter-xxljob模块 > **1.0.30(2022.09.29)** - 完善DateUtil的中文注解,新增LocalDate的使用说明 - 修复cn.springsoter.core.security.interceptor.DecryptInterceptor的空指针bug,对result进行判空处理 > **1.0.29(2022.09.19)** - 优化大汉三通短信平台接口代码,新增callbackurl参数 - 新增PhoneUtil工具类,用来判断手机号是否合法,包括手机归属等 > **1.0.28(2022.09.13)** - 新增大汉三通短信平台模块 > **1.0.27(2022.09.09)** - 回滚版本1.0.23的代码:通过S3Template上传时,指定ObjectMetadata,设定CachControl为:no-cache,不然前端下载的时候会报错,有缓存 > **1.0.26(2022.08.19)** - 引入Sentry 4.1.0依赖 > **1.0.25(2022.06.16)** - 优化代码 - 修改redis的architecture参数校验bug > **1.0.24(2022.06.16)** - 新增自定义脱敏功能 - redis配置动态支持4种架构:standalone|replication|sentinel|cluster > **1.0.23 (2022.05.25)** - 通过S3Template上传时,指定ObjectMetadata,设定CachControl为:no-cache,不然前端下载的时候会报错,有缓存 > **1.0.22 (2022.04.18)** - 修改调用FileUtil.getMd5(InputStream in)未关闭流的bug > **1.0.19 (2022.04.14)** - 修改obs访问域名为:桶名.华为云Obs地址 > **1.0.14 (2021.12.21)** - 升级log4j2版本为2.17.0 - 优化各个子模块的pom.xml中的依赖 - 重命名:AesEncryptHandler-> AESEncryptHandler,Sm4EncryptHandler-> SM4EncryptHandler > **1.0.13 (2021.12.16)** - 修改字段加解密支持国密算法 - 修改cn.springsoter.core.security.config.SecurityConfig的bug - 优化/重构相关代码 - 重命名:AesUtil -> AESUtil,Des3Util -> DES3Util > **1.0.12 (2021.12.15)** - 修改字段加解密支持国密算法 > **1.0.11 (2021.12.10)** - 修改RedisUtil重复注入的问题 - 修复log4j2安全漏洞 > **1.0.10 (2021.11.17)** - 新增RedisUtil的zset操作 > **1.0.9 (2021.11.17)** - 新增oss的文件下载功能 > **1.0.8** (2021.11.01) - 修改统一异常处理返回的http status 400改为200 > **1.0.7** (2021.10.27) - 修改bug - 优化代码结构 > **1.0.6** (2021.10.13) - 修改bug > **1.0.5** (2021.10.11) - 修改在执行update时无法加密解密的bug > ***1.0.4*** (2021.09.27) - 新增mica-auto自动装配功能 - 优化pom依赖关系 - 修改bug > ***1.0.3*** (2021.09.26) - 新增springsoter-starter-auth服务 - 优化springsoter-core-log4j2配置,修改无法设置applicationName的bug,优化异步日志的配置方式 - 新增application.yml配置文件的某些字段加解密功能 > ***1.0.2*** (2021.09.18) - 修改若干bug - 新增ThreadLocalUtil,删除原来的RequestContextHandler - 新增和优化若干工具类 - springsoter-core-mybatisplus新增基于mapstruct的BaseConverter和基于cglib的BeanConvertUtil > ***1.0.1*** (2021.09.14) - 修改若干bug - 使用RedisTemplate时,value的序列化方式改为Jackson - 新增Redission分布式锁 - 新增安全组件security:用于字段脱敏、加密、解密 - 优化代码结构 - 新增使用说明文档:《SpringSoter使用说明.md》 > ***1.0.0*** (2021.08.30) - 支持log4j2异步日志 - 支持oss文件上传,采用s3协议 - 支持junit5单元测试 - 新增发邮件服务 - 支持mybatisplus - 支持prometheus监控 - 项目启动采用自定义启动器,如:SpringSoterApplication.*run*(DemoApplication.**class**, args); - 采用swagger3,即:openapi3协议进行文档编写 - 支持统一异常处理,统一json返回对象->R,统一自定义异常 - json序列化采用Springboot自带的Jackson - 相关工具类请参考包:cn.springsoter.core.tool.utils - 支持redis单机配置,采用resttemplate方式