✨ [2025-05-27] 梳理基础工具说明,添加版本
All checks were successful
Publish to Confluence / confluence (push) Successful in 1m3s
All checks were successful
Publish to Confluence / confluence (push) Successful in 1m3s
This commit is contained in:
parent
9323cce6a5
commit
37f268e3bd
@ -3,7 +3,8 @@
|
||||
<!-- Parent: 技术方案 -->
|
||||
<!-- Parent: 基建 -->
|
||||
<!-- Parent: 00-基础组件 -->
|
||||
<!-- Title: 20250411-EngineStarterRedis使用指南 -->
|
||||
<!-- Parent: 00-EngineStarterRedis使用指南 -->
|
||||
<!-- Title: 20250411-engine-starter-redis-1.0.14 -->
|
||||
|
||||
<!-- Macro: :anchor\((.*)\):
|
||||
Template: ac:anchor
|
44
文档/基础组件/20250411-engine-starter-seata-1.0.14.md
Normal file
44
文档/基础组件/20250411-engine-starter-seata-1.0.14.md
Normal file
@ -0,0 +1,44 @@
|
||||
<!-- Space: qifu -->
|
||||
<!-- Parent: 后端技术&知识&规范 -->
|
||||
<!-- Parent: 技术方案 -->
|
||||
<!-- Parent: 基建 -->
|
||||
<!-- Parent: 00-基础组件 -->
|
||||
<!-- Parent: 00-EngineStarterSeata使用指南 -->
|
||||
<!-- Title: 20250526-engine-starter-seata-1.0.14 -->
|
||||
|
||||
<!-- Macro: :anchor\((.*)\):
|
||||
Template: ac:anchor
|
||||
Anchor: ${1} -->
|
||||
<!-- Macro: \!\[.*\]\((.+)\)\<\!\-\- width=(.*) \-\-\>
|
||||
Template: ac:image
|
||||
Url: ${1}
|
||||
Width: ${2} -->
|
||||
<!-- Macro: \<\!\-\- :toc: \-\-\>
|
||||
Template: ac:toc
|
||||
Printable: 'false'
|
||||
MinLevel: 2
|
||||
MaxLevel: 4 -->
|
||||
<!-- Include: 杂项/声明文件.md -->
|
||||
|
||||
<!-- :toc: -->
|
||||
|
||||
# engine-starter-seata 使用教程
|
||||
|
||||
> 基于 seata 的通用封装
|
||||
|
||||
## 功能特性
|
||||
|
||||
- [X] 修复 RuntimeException 被重复包裹导致的问题
|
||||
|
||||
-------
|
||||
|
||||
## 快速使用
|
||||
### 添加依赖
|
||||
|
||||
```xml
|
||||
|
||||
<dependency>
|
||||
<groupId>com.yuanmeng.engine</groupId>
|
||||
<artifactId>engine-starter-seata</artifactId>
|
||||
</dependency>
|
||||
```
|
@ -3,7 +3,8 @@
|
||||
<!-- Parent: 技术方案 -->
|
||||
<!-- Parent: 基建 -->
|
||||
<!-- Parent: 00-基础组件 -->
|
||||
<!-- Title: 20250509-EngineStarterFeign使用指南 -->
|
||||
<!-- Parent: 00-EngineStarterFeign使用指南 -->
|
||||
<!-- Title: 20250509-engine-starter-feign-1.1.0 -->
|
||||
|
||||
<!-- Macro: :anchor\((.*)\):
|
||||
Template: ac:anchor
|
@ -3,7 +3,8 @@
|
||||
<!-- Parent: 技术方案 -->
|
||||
<!-- Parent: 基建 -->
|
||||
<!-- Parent: 00-基础组件 -->
|
||||
<!-- Title: 20250509-EngineStarterWeb使用指南 -->
|
||||
<!-- Parent: 00-EngineStarterWeb使用指南 -->
|
||||
<!-- Title: 20250509-engine-starter-web-1.1.0 -->
|
||||
|
||||
<!-- Macro: :anchor\((.*)\):
|
||||
Template: ac:anchor
|
177
文档/基础组件/20250526-engine-starter-mybatis-plus-2.0.0.md
Normal file
177
文档/基础组件/20250526-engine-starter-mybatis-plus-2.0.0.md
Normal file
@ -0,0 +1,177 @@
|
||||
<!-- Space: qifu -->
|
||||
<!-- Parent: 后端技术&知识&规范 -->
|
||||
<!-- Parent: 技术方案 -->
|
||||
<!-- Parent: 基建 -->
|
||||
<!-- Parent: 00-基础组件 -->
|
||||
<!-- Parent: 00-EngineStarterMybatisPlus使用指南 -->
|
||||
<!-- Title: 20250526-engine-starter-mybatis-plus-2.0.0 -->
|
||||
|
||||
<!-- Macro: :anchor\((.*)\):
|
||||
Template: ac:anchor
|
||||
Anchor: ${1} -->
|
||||
<!-- Macro: \!\[.*\]\((.+)\)\<\!\-\- width=(.*) \-\-\>
|
||||
Template: ac:image
|
||||
Url: ${1}
|
||||
Width: ${2} -->
|
||||
<!-- Macro: \<\!\-\- :toc: \-\-\>
|
||||
Template: ac:toc
|
||||
Printable: 'false'
|
||||
MinLevel: 2
|
||||
MaxLevel: 4 -->
|
||||
<!-- Include: 杂项/声明文件.md -->
|
||||
|
||||
<!-- :toc: -->
|
||||
|
||||
# engine-starter-mybatis-plus 使用教程
|
||||
|
||||
> 基于 mybatis-plus 的各种工具封装
|
||||
> 具体使用可参考 [engine-sample > engine-sample-starter-mybatis-plus](../engine-sample/engine-sample-starter-mybatis-plus)
|
||||
|
||||
## 功能特性
|
||||
|
||||
- [X] `YmMybatisPlusUtils`: MybatisPlus工具类
|
||||
- [X] `YmBaseMapper`: Mapper扩展父类
|
||||
- Mapper 添加删除操作源数据自动填充方法
|
||||
- [X] `YmBaseService`: Service扩展父类
|
||||
- [X] `YmBaseServiceImpl`: Service扩展父类实现
|
||||
- [X] `YmJsonTypeHandler`: 字段处理合并
|
||||
- 可以处理 `Map, JSONObject, JSONArray, List<JSONObject>, List<Integer>`, 其余的 Collection 对象需要实现继承该类,实现 `collectionType` 方法
|
||||
- 内置 `YmLongListTypeHandler`
|
||||
- 内置 `YmStringListTypeHandler`
|
||||
- [X] `YmMetaObjectHandler`: 源数据填充
|
||||
- `YmCreateEntity` 插入数据填充
|
||||
- `YmUpdateEntity` 更新数据填充
|
||||
- [X] `YmBaseEntity` 实体基类
|
||||
- `YmTenantBaseEntity` 实体基类(带tenantId)
|
||||
- [X] `YmTenantLineHandler`: tenantId 填充
|
||||
|
||||
-------
|
||||
|
||||
## 快速使用
|
||||
|
||||
- **注意:** `qifu-saas-parent >= 1.1.1-SNAPSHOT`
|
||||
- **注意:** `pom.xml` 中 `engine-starter-mybatis-plus` 和 `data-mybatis-plus` 不兼容
|
||||
- **注意:** 兼容 `engine-starter-mybatis-plus` 和 `data-mybatis-plus` 需要添加依赖 `engine-starter-compatible`
|
||||
- **注意:** 启动类 `@ComponentScan` 需要变更为如下形式
|
||||
- ```java
|
||||
@ComponentScan(value = "com.yuanmeng.*",
|
||||
excludeFilters = {
|
||||
@ComponentScan.Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class),
|
||||
@ComponentScan.Filter(type = FilterType.CUSTOM, classes = AutoConfigurationExcludeFilter.class)
|
||||
})
|
||||
@SpringBootApplication
|
||||
public class SampleStarterWebApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(SampleStarterWebApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
### 添加依赖
|
||||
|
||||
```xml
|
||||
|
||||
<dependency>
|
||||
<groupId>com.yuanmeng.engine</groupId>
|
||||
<artifactId>engine-starter-mybatis-plus</artifactId>
|
||||
</dependency>
|
||||
```
|
||||
|
||||
----
|
||||
|
||||
## 使用工具
|
||||
|
||||
### 开启插入时填充更新数据(默认关闭)
|
||||
```yaml
|
||||
yuanmeng:
|
||||
mybatis-plus:
|
||||
meta-inject:
|
||||
enable: true
|
||||
fill-update-on-insert: false
|
||||
```
|
||||
|
||||
### 自定义List字段序列化反序列化
|
||||
```java
|
||||
public class YmUserInfoTypeHandler extends YmJsonTypeHandler {
|
||||
|
||||
public YmUserInfoTypeHandler(Class<?> type) {
|
||||
super(type);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Class<?> collectionItemType() {
|
||||
return UserInfo.class;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@TableName(value = "test_no_tenant_id_ignore", autoResultMap = true)
|
||||
public class TestNoTenantIdIgnore extends YmBaseEntity<Long> {
|
||||
|
||||
@TableField(typeHandler = YmJsonTypeHandler.class)
|
||||
private UserInfo customObject;
|
||||
|
||||
@TableField(typeHandler = YmJsonTypeHandler.class)
|
||||
private JSONArray customJsonArray;
|
||||
|
||||
@TableField(typeHandler = YmUserInfoTypeHandler.class)
|
||||
private List<UserInfo> customListObject;
|
||||
|
||||
@TableField(typeHandler = YmLongListTypeHandler.class)
|
||||
private List<Long> customListIntObject;
|
||||
}
|
||||
```
|
||||
|
||||
### 开启雪花算法Id生成(对默认基类不生效,默认关闭)
|
||||
```yaml
|
||||
yuanmeng:
|
||||
mybatis-plus:
|
||||
enable-identifier-generator: false
|
||||
```
|
||||
|
||||
------
|
||||
|
||||
## 完整默认配置文件
|
||||
|
||||
```yaml
|
||||
yuanmeng:
|
||||
mybatis-plus:
|
||||
#- 开启 starter-mybatis-plus。默认开启
|
||||
enable: true
|
||||
#- 开启 雪花id 生成。默认关闭
|
||||
enable-identifier-generator: false
|
||||
#- 开启父类增强扩展。默认开启
|
||||
enable-sql-inject: true
|
||||
#- 拦截器配置
|
||||
interceptor:
|
||||
#- 开启拦截器配置。默认开启
|
||||
enable: true
|
||||
#- 开启乐观锁。默认关闭
|
||||
enable-optimistic-locker: false
|
||||
#- 开启恶意sql拦截。默认开启
|
||||
enable-block-attack: true
|
||||
#- 开启分页处理。默认开启
|
||||
enable-pagination: true
|
||||
#- 多租户处理
|
||||
tenant-line:
|
||||
#- 开启全局多租户处理。默认开启
|
||||
enable: true
|
||||
#- 开启包含模式。默认排除模式
|
||||
include-mode: false
|
||||
#- 需要处理的表格
|
||||
tenant-line-tables:
|
||||
- test_no_tenant_id
|
||||
#- 需要处理的表格前缀
|
||||
tenant-line-prefix-tables:
|
||||
- test_no
|
||||
#- 源数据填充
|
||||
meta-inject:
|
||||
#- 开启源数据填充。默认开启
|
||||
enable: true
|
||||
#- 插入时填充更新数据。默认关闭
|
||||
fill-update-on-insert: false
|
||||
```
|
Loading…
x
Reference in New Issue
Block a user