init commit
This commit is contained in:
192
README.md
192
README.md
@@ -1,10 +1,80 @@
|
||||
# tape-mybatis-generator-plugin
|
||||
> MyBatis 代码生成插件
|
||||
|
||||
## 功能特性
|
||||
|
||||
## Uses
|
||||
in `pom.xml`
|
||||
```
|
||||
本插件为 MyBatis Generator 提供了以下增强功能:
|
||||
|
||||
1. **TapeMybatisGeneratorPlugin** - 扩展 MyBatis Mapper,添加 `selectPrimaryKeyByExample` 方法,支持分页查询主键列表
|
||||
2. **TapeRepositoryGeneratorPlugin** - 为非视图表自动生成 Repository 接口和实现类,提供完整的 CRUD 和软删除功能
|
||||
3. **TapeRepoviewGeneratorPlugin** - 为视图表自动生成 RepoView 接口和实现类,提供查询功能
|
||||
4. **分页支持** - 为 Example 类自动添加分页相关字段和方法(offset、rows、usePage、limit 等)
|
||||
|
||||
## 插件说明
|
||||
|
||||
### TapeMybatisGeneratorPlugin
|
||||
扩展 MyBatis Mapper,添加以下功能:
|
||||
- 在 Mapper 接口中添加 `selectPrimaryKeyByExample` 方法
|
||||
- 在 Mapper XML 中生成对应的 SQL 查询语句
|
||||
- 支持分页查询(通过 `AbstractWithLimitPlugin` 提供)
|
||||
|
||||
### TapeRepositoryGeneratorPlugin
|
||||
为非视图表生成 Repository 层代码:
|
||||
- **接口位置**: `{facadeRepositoryPackage}.I{TableName}Repository`
|
||||
- **实现类位置**: `{domainRepositoryPackage}.{TableName}RepositoryImpl`
|
||||
- **视图表过滤**: 根据 `viewKeyWords` 配置自动识别并跳过视图表
|
||||
|
||||
**生成的方法**:
|
||||
- `trashById(long id)` - 移动到回收站(单个)
|
||||
- `trashAll({Example} example)` - 移动到回收站(批量)
|
||||
- `deleteById(long id, boolean release)` - 删除(单个,支持物理删除)
|
||||
- `deleteAll({Example} example, boolean release)` - 删除(批量,支持物理删除)
|
||||
- `recoverById(long id)` - 从回收站恢复(单个)
|
||||
- `recoverAll({Example} example)` - 从回收站恢复(批量)
|
||||
- `findNoWhereById(long id)` - 查找(不区分有效/回收站)
|
||||
- `findValidById(long id)` - 查找有效记录(单个)
|
||||
- `findTrashById(long id)` - 查找回收站记录(单个)
|
||||
- `findValidOne({Example} example)` - 查找有效记录(单个,支持条件)
|
||||
- `findTrashOne({Example} example)` - 查找回收站记录(单个,支持条件)
|
||||
- `getValidList({Example} example)` - 获取有效记录列表(支持分页)
|
||||
- `getTrashList({Example} example)` - 获取回收站记录列表(支持分页)
|
||||
- `countByValid({Example} example)` - 统计有效记录数
|
||||
- `countByTrash({Example} example)` - 统计回收站记录数
|
||||
- `insert({Model} record)` - 插入记录(自动生成 GUID、设置默认值)
|
||||
- `update({Model} record)` - 更新记录(支持乐观锁)
|
||||
|
||||
### TapeRepoviewGeneratorPlugin
|
||||
为视图表生成 RepoView 层代码:
|
||||
- **接口位置**: `{facadeRepoviewPackage}.I{TableName}Repo`
|
||||
- **实现类位置**: `{domainRepoviewPackage}.{TableName}RepoImpl`
|
||||
- **视图表识别**: 仅处理包含 `viewKeyWords` 关键字的表
|
||||
|
||||
**生成的方法**:
|
||||
- `findOne({Example} example)` - 查找单条记录
|
||||
- `getList({Example} example)` - 获取记录列表(支持分页)
|
||||
- `count({Example} example)` - 统计记录数
|
||||
|
||||
### 分页功能
|
||||
通过 `AbstractWithLimitPlugin` 为所有 Example 类添加分页支持:
|
||||
|
||||
**添加的字段**:
|
||||
- `offset` - 偏移量
|
||||
- `rows` - 每页数量
|
||||
- `minPageNum` - 最小页码(默认 1)
|
||||
- `defaultPageSize` - 默认每页数量(默认 20)
|
||||
- `maxPageSize` - 最大每页数量(默认 100)
|
||||
|
||||
**添加的方法**:
|
||||
- `limit(int rows)` - 设置每页数量
|
||||
- `limit(int offset, int rows)` - 设置偏移量和每页数量
|
||||
- `usePage(int pageNum, int pageSize)` - 使用页码和每页数量(自动计算 offset)
|
||||
- `getPageNum()` - 获取当前页码
|
||||
- `getPageSize()` - 获取当前每页数量
|
||||
|
||||
## 使用方法
|
||||
### 1. 在 `pom.xml` 中配置插件
|
||||
|
||||
```xml
|
||||
<build>
|
||||
<finalName>application</finalName>
|
||||
<plugins>
|
||||
@@ -37,9 +107,9 @@ in `pom.xml`
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.iqudoo.framework</groupId>
|
||||
<artifactId>tape-mybaits-generator-plugin</artifactId>
|
||||
<artifactId>tape-mybatis-generator-plugin</artifactId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
<systemPath>${project.basedir}/src/lib/tape-mybaits-generator-plugin-1.0-SNAPSHOT.jar</systemPath>
|
||||
<systemPath>${project.basedir}/src/lib/tape-mybatis-generator-plugin-1.0-SNAPSHOT.jar</systemPath>
|
||||
<scope>system</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
@@ -47,24 +117,58 @@ in `pom.xml`
|
||||
</plugins>
|
||||
</build>
|
||||
```
|
||||
in `mybatis.generator.xml`
|
||||
```
|
||||
<property name="viewKeyWords" value="VIEW_,V_"/>
|
||||
<property name="targetProject" value="src/main/java"/>
|
||||
<property name="modelPackage" value="com.iqudoo.platform.application.database.model"/>
|
||||
<property name="mapperPackage" value="com.iqudoo.platform.application.database.mapper"/>
|
||||
<property name="facadeRepositoryPackage" value="com.iqudoo.platform.application.facade.repository"/>
|
||||
<property name="domainRepositoryPackage" value="com.iqudoo.platform.application.domain.repository"/>
|
||||
<property name="facadeRepoviewPackage" value="com.iqudoo.platform.application.facade.repoview"/>
|
||||
<property name="domainRepoviewPackage" value="com.iqudoo.platform.application.domain.repoview"/>
|
||||
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeMybatisGeneratorPlugin"/>
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeRepositoryGeneratorPlugin"/>
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeRepoviewGeneratorPlugin"/>
|
||||
### 2. 在 `mybatis.generator.xml` 中配置插件
|
||||
|
||||
```xml
|
||||
<context id="Mysql" targetRuntime="MyBatis3">
|
||||
<!-- 配置属性 -->
|
||||
<property name="viewKeyWords" value="VIEW_,V_"/>
|
||||
<property name="targetProject" value="src/main/java"/>
|
||||
<property name="modelPackage" value="com.iqudoo.platform.application.database.model"/>
|
||||
<property name="mapperPackage" value="com.iqudoo.platform.application.database.mapper"/>
|
||||
<property name="facadeRepositoryPackage" value="com.iqudoo.platform.application.facade.repository"/>
|
||||
<property name="domainRepositoryPackage" value="com.iqudoo.platform.application.domain.repository"/>
|
||||
<property name="facadeRepoviewPackage" value="com.iqudoo.platform.application.facade.repoview"/>
|
||||
<property name="domainRepoviewPackage" value="com.iqudoo.platform.application.domain.repoview"/>
|
||||
<property name="snowflakeUtilClass" value="com.iqudoo.framework.tape.modules.utils.SnowflakeUtil"/>
|
||||
<property name="snowflakeUtilGenId" value="SnowflakeUtil.nextId()"/>
|
||||
|
||||
<!-- 添加插件 -->
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeMybatisGeneratorPlugin"/>
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeRepositoryGeneratorPlugin"/>
|
||||
<plugin type="com.iqudoo.framework.mybatis.TapeRepoviewGeneratorPlugin"/>
|
||||
|
||||
<!-- 其他配置... -->
|
||||
</context>
|
||||
```
|
||||
|
||||
## Table Template
|
||||
```
|
||||
### 3. 配置参数说明
|
||||
|
||||
| 参数名 | 说明 | 默认值 | 必需 |
|
||||
|--------|---------------------|--------------------------------------------------------|------|
|
||||
| `viewKeyWords` | 视图表关键字(逗号分隔,不区分大小写) | `VIEW_,V_` | 否 |
|
||||
| `targetProject` | 生成代码的目标项目路径 | `src/main/java` | 否 |
|
||||
| `modelPackage` | Model 类的包路径 | `com.iqudoo.platform.application.database.model` | 是 |
|
||||
| `mapperPackage` | Mapper 接口的包路径 | `com.iqudoo.platform.application.database.mapper` | 是 |
|
||||
| `facadeRepositoryPackage` | Repository 接口的包路径 | `com.iqudoo.platform.application.facade.repository` | 否 |
|
||||
| `domainRepositoryPackage` | Repository 实现类的包路径 | `com.iqudoo.platform.application.domain.repository` | 否 |
|
||||
| `facadeRepoviewPackage` | RepoView 接口的包路径 | `com.iqudoo.platform.application.facade.repoview` | 否 |
|
||||
| `snowflakeUtilClass` | 雪花算法ID生成工具类 | `com.iqudoo.framework.tape.modules.utils.SnowflakeUtil` | 否 |
|
||||
| `snowflakeUtilGenId` | 雪花算法ID生成方法 | `SnowflakeUtil.nextId()` | 否 |
|
||||
|
||||
**视图表识别规则**:
|
||||
- 表名包含 `viewKeyWords` 中任一关键字的表将被识别为视图表,大小写不敏感
|
||||
- 视图表会生成 RepoView,不会生成 Repository
|
||||
- 非视图表会生成 Repository,不会生成 RepoView
|
||||
|
||||
## 数据库表结构要求
|
||||
|
||||
### 标准表结构模板
|
||||
|
||||
为了使用完整的 Repository 功能(软删除、回收站等),表结构需要包含以下标准字段:
|
||||
|
||||
```sql
|
||||
DROP TABLE IF EXISTS `your_table_name`;
|
||||
CREATE TABLE `your_table_name` (
|
||||
`guid` bigint(0) UNSIGNED NOT NULL DEFAULT 0 COMMENT 'GUID',
|
||||
@@ -80,9 +184,24 @@ CREATE TABLE `your_table_name` (
|
||||
PRIMARY KEY (`guid`) USING BTREE
|
||||
) ENGINE = InnoDB COMMENT = '你的表格备注' ROW_FORMAT = Dynamic;
|
||||
```
|
||||
in `mybatis.generator.xml`
|
||||
```
|
||||
<!-- your_table_name -->
|
||||
|
||||
**必需字段说明**:
|
||||
- `guid` - 主键,类型为 `bigint UNSIGNED`
|
||||
- `is_hidden` - 隐藏标志,用于回收站功能
|
||||
- `is_delete` - 删除标志,用于软删除功能
|
||||
- `delete_token` - 删除令牌,用于标识删除状态
|
||||
- `data_version` - 数据版本,用于乐观锁
|
||||
- `create_time` - 创建时间,自动设置
|
||||
- `update_time` - 更新时间,自动更新
|
||||
|
||||
### 视图表结构
|
||||
|
||||
视图表不需要上述标准字段,只需要包含业务字段即可。
|
||||
|
||||
### 在 `mybatis.generator.xml` 中配置表
|
||||
|
||||
```xml
|
||||
<!-- 标准表配置 -->
|
||||
<table tableName="your_table_name"
|
||||
domainObjectName="YourTableName"
|
||||
enableInsert="true"
|
||||
@@ -95,4 +214,31 @@ in `mybatis.generator.xml`
|
||||
selectByExampleQueryId="false">
|
||||
<property name="useActualColumnNames" value="false"/>
|
||||
</table>
|
||||
|
||||
<!-- 视图表配置(表名包含 VIEW_ 或 V_ 前缀,大小写不敏感) -->
|
||||
<table tableName="v_your_view_name"
|
||||
domainObjectName="ViewYourViewName"
|
||||
enableInsert="false"
|
||||
enableDeleteByPrimaryKey="false"
|
||||
enableUpdateByPrimaryKey="false"
|
||||
enableCountByExample="true"
|
||||
enableUpdateByExample="false"
|
||||
enableDeleteByExample="false"
|
||||
enableSelectByExample="true"
|
||||
selectByExampleQueryId="false">
|
||||
<property name="useActualColumnNames" value="false"/>
|
||||
<generatedKey column="guid" sqlStatement="JDBC" identity="false"/>
|
||||
</table>
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
|
||||
1. **主键要求**:表必须有一个主键字段,且字段名为 `guid`,类型为 `bigint UNSIGNED`
|
||||
2. **视图表识别**:视图表通过表名中的关键字识别,默认关键字为 `view_` 和 `v_` 不区分大小写
|
||||
3. **分页功能**:所有 Example 类都自动包含分页功能,可通过 `usePage()` 方法使用
|
||||
4. **乐观锁**:更新操作使用 `data_version` 字段实现乐观锁,更新时需要传入正确的版本号
|
||||
5. **软删除**:删除操作默认是软删除(设置 `is_delete` 标志),可通过 `release=true` 参数执行物理删除
|
||||
6. **回收站**:通过 `is_hidden` 字段实现回收站功能,`trash` 方法将记录移动到回收站,`recover` 方法恢复记录
|
||||
7. **自动字段**:插入记录时,插件会自动设置 `guid`(使用雪花算法)、`is_delete`、`is_hidden`、`delete_token`、`data_version`、`create_time`、`update_time` 等字段
|
||||
8. **BLOB 字段支持**:如果表包含 BLOB 字段,插件会自动使用 `selectByExampleWithBLOBs` 和 `updateByExampleWithBLOBs` 方法
|
||||
9. **MyBatis Generator 版本**:本插件基于 MyBatis Generator 1.4.1 开发,建议使用 1.4.0 或更高版本
|
||||
Binary file not shown.
@@ -19,6 +19,8 @@ import java.util.Properties;
|
||||
public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
|
||||
// 固定配置项
|
||||
private String snowflakeUtilClass = "com.iqudoo.framework.tape.modules.utils.SnowflakeUtil";
|
||||
private String snowflakeUtilGenId = "SnowflakeUtil.nextId()";
|
||||
private String facadeRepositoryPackage = "com.iqudoo.platform.application.facade.repository";
|
||||
private String domainRepositoryPackage = "com.iqudoo.platform.application.domain.repository";
|
||||
private String modelPackage = "com.iqudoo.platform.application.database.model";
|
||||
@@ -45,6 +47,12 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
public void setProperties(Properties properties) {
|
||||
super.setProperties(properties);
|
||||
// 读取自定义配置
|
||||
if (StringUtility.stringHasValue(properties.getProperty("snowflakeUtilClass"))) {
|
||||
snowflakeUtilClass = properties.getProperty("snowflakeUtilClass");
|
||||
}
|
||||
if (StringUtility.stringHasValue(properties.getProperty("snowflakeUtilGenId"))) {
|
||||
snowflakeUtilGenId = properties.getProperty("snowflakeUtilGenId");
|
||||
}
|
||||
if (StringUtility.stringHasValue(properties.getProperty("facadeRepositoryPackage"))) {
|
||||
facadeRepositoryPackage = properties.getProperty("facadeRepositoryPackage");
|
||||
}
|
||||
@@ -331,14 +339,6 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
FullyQualifiedJavaType superInterface = new FullyQualifiedJavaType(facadeRepositoryPackage + "." + interfaceName);
|
||||
implClass.addSuperInterface(superInterface);
|
||||
|
||||
// 修复Logger字段:添加static final修饰符
|
||||
Field loggerField = new Field("LOGGER", new FullyQualifiedJavaType("org.slf4j.Logger"));
|
||||
loggerField.setVisibility(JavaVisibility.PRIVATE);
|
||||
loggerField.setStatic(true);
|
||||
loggerField.setFinal(true);
|
||||
loggerField.setInitializationString("Tape.getLogger(" + implClassName + ".class)");
|
||||
implClass.addField(loggerField);
|
||||
|
||||
String mapperFieldName = lowerFirst(mapperClassName);
|
||||
Field mapperField = new Field(mapperFieldName, new FullyQualifiedJavaType(mapperPackage + "." + mapperClassName));
|
||||
mapperField.setVisibility(JavaVisibility.PRIVATE);
|
||||
@@ -383,10 +383,10 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine(" return " + mapperFieldName + ".deleteByExample(" + exampleParamName + ");");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : " + exampleParamName + ".getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine(modelClassName + " " + lowerFirst(modelClassName) + " = new " + modelClassName + "();");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsDelete(DatabaseCommonDataIsDeleteEnum.DELETED.getValue());");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsDelete(1);");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByExampleSelective(" + lowerFirst(modelClassName) + ", " + exampleParamName + ");");
|
||||
|
||||
@@ -404,11 +404,11 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
|
||||
// 方法体
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : " + exampleParamName + ".getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0);");
|
||||
method.addBodyLine(" criteria.andIsHiddenEqualTo(0);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine(modelClassName + " " + lowerFirst(modelClassName) + " = new " + modelClassName + "();");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsHidden(DatabaseCommonDataIsHiddenEnum.HIDDEN.getValue());");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsHidden(1);");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setDeleteToken(" + lowerFirst(modelClassName) + ".getGuid() + \"\");");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByExampleSelective(" + lowerFirst(modelClassName) + ", " + exampleParamName + ");");
|
||||
@@ -427,11 +427,11 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
|
||||
// 方法体
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : " + exampleParamName + ".getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.HIDDEN.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0);");
|
||||
method.addBodyLine(" criteria.andIsHiddenEqualTo(1);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine(modelClassName + " " + lowerFirst(modelClassName) + " = new " + modelClassName + "();");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsHidden(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setIsHidden(0);");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setDeleteToken(\"VALID\");");
|
||||
method.addBodyLine(lowerFirst(modelClassName) + ".setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByExampleSelective(" + lowerFirst(modelClassName) + ", " + exampleParamName + ");");
|
||||
@@ -490,16 +490,11 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
}
|
||||
|
||||
private void addImportPackages(TopLevelClass implClass, String modelClassName, String exampleClassName, String mapperClassName, String interfaceName) {
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("com.iqudoo.framework.tape.Tape"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("com.iqudoo.framework.tape.modules.utils.SnowflakeUtil"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("com.iqudoo.framework.tape.modules.crud.DatabaseCommonDataIsDeleteEnum"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("com.iqudoo.framework.tape.modules.crud.DatabaseCommonDataIsHiddenEnum"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("com.iqudoo.framework.tape.modules.crud.DatabaseErrorConstants"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType(snowflakeUtilClass));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType(mapperPackage + "." + mapperClassName));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType(modelPackage + "." + modelClassName));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType(modelPackage + "." + exampleClassName));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType(facadeRepositoryPackage + "." + interfaceName));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("org.slf4j.Logger"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("org.springframework.stereotype.Repository"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("javax.annotation.Resource"));
|
||||
implClass.addImportedType(new FullyQualifiedJavaType("java.util.ArrayList"));
|
||||
@@ -566,7 +561,7 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine("if (record.getGuid() != null) {");
|
||||
method.addBodyLine(" aDo.setGuid(record.getGuid());");
|
||||
method.addBodyLine("} else {");
|
||||
method.addBodyLine(" Long guid = SnowflakeUtil.nextId();");
|
||||
method.addBodyLine(" Long guid = " + snowflakeUtilGenId + ";");
|
||||
method.addBodyLine(" aDo.setGuid(guid);");
|
||||
method.addBodyLine("}");
|
||||
|
||||
@@ -583,8 +578,8 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine("aDo." + setterMethod + "(record." + getterMethod + "());");
|
||||
}
|
||||
|
||||
method.addBodyLine("aDo.setIsDelete(DatabaseCommonDataIsDeleteEnum.NONE.getValue());");
|
||||
method.addBodyLine("aDo.setIsHidden(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine("aDo.setIsDelete(0);");
|
||||
method.addBodyLine("aDo.setIsHidden(0);");
|
||||
method.addBodyLine("aDo.setDeleteToken(\"VALID\");");
|
||||
method.addBodyLine("aDo.setDataVersion(1);");
|
||||
method.addBodyLine("aDo.setCreateTime(new Date());");
|
||||
@@ -595,13 +590,12 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine(" return aDo;");
|
||||
method.addBodyLine("}");
|
||||
|
||||
method.addBodyLine("// 更新当前数据版本号和GUID");
|
||||
method.addBodyLine("// optimistic locking with data version and guid");
|
||||
method.addBodyLine("record.setGuid(aDo.getGuid());");
|
||||
method.addBodyLine("record.setDataVersion(aDo.getDataVersion());");
|
||||
method.addBodyLine("record.setCreateTime(aDo.getCreateTime());");
|
||||
method.addBodyLine("record.setUpdateTime(aDo.getUpdateTime());");
|
||||
method.addBodyLine("LOGGER.error(\"Database write failed, " + modelClassName + ": {}\", aDo);");
|
||||
method.addBodyLine("throw DatabaseErrorConstants.DATABASE_WRITE_ERROR;");
|
||||
method.addBodyLine("throw new Throwable(\"Database write failed, " + modelClassName + "\");");
|
||||
|
||||
implClass.addMethod(method);
|
||||
}
|
||||
@@ -617,7 +611,7 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
|
||||
method.addBodyLine(modelClassName + " aDo = findValidById(record.getGuid());");
|
||||
method.addBodyLine("if (aDo == null) {");
|
||||
method.addBodyLine(" throw DatabaseErrorConstants.DATABASE_RECORD_NOT_FOUND;");
|
||||
method.addBodyLine(" throw new Throwable(\"Database record not found, " + modelClassName + " guid:\" + record.getGuid());");
|
||||
method.addBodyLine("}");
|
||||
|
||||
for (IntrospectedColumn column : introspectedTable.getAllColumns()) {
|
||||
@@ -645,7 +639,7 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine(" .andDataVersionEqualTo(lockDataVersion);");
|
||||
method.addBodyLine("aDo.setDataVersion(aDo.getDataVersion() + 1);");
|
||||
method.addBodyLine("aDo.setUpdateTime(new Date());");
|
||||
method.addBodyLine("// 更新当前数据版本号");
|
||||
method.addBodyLine("// update data version");
|
||||
method.addBodyLine("record.setDataVersion(aDo.getDataVersion());");
|
||||
method.addBodyLine("record.setUpdateTime(aDo.getUpdateTime());");
|
||||
|
||||
@@ -671,7 +665,7 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine("if (release) {");
|
||||
method.addBodyLine(" return " + mapperFieldName + ".deleteByPrimaryKey(aDo.getGuid());");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("aDo.setIsDelete(DatabaseCommonDataIsDeleteEnum.DELETED.getValue());");
|
||||
method.addBodyLine("aDo.setIsDelete(1);");
|
||||
method.addBodyLine("aDo.setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByPrimaryKey(aDo);");
|
||||
|
||||
@@ -690,7 +684,7 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine("if (aDo == null) {");
|
||||
method.addBodyLine(" return 0;");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("aDo.setIsHidden(DatabaseCommonDataIsHiddenEnum.HIDDEN.getValue());");
|
||||
method.addBodyLine("aDo.setIsHidden(1);");
|
||||
method.addBodyLine("aDo.setDeleteToken(aDo.getGuid() + \"\");");
|
||||
method.addBodyLine("aDo.setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByPrimaryKey(aDo);");
|
||||
@@ -710,10 +704,10 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addBodyLine("if (aDo == null) {");
|
||||
method.addBodyLine(" return 0;");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("if (aDo.getIsDelete() == DatabaseCommonDataIsDeleteEnum.DELETED.getValue()) {");
|
||||
method.addBodyLine("if (aDo.getIsDelete() == 1) {");
|
||||
method.addBodyLine(" return 0;");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("aDo.setIsHidden(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine("aDo.setIsHidden(0);");
|
||||
method.addBodyLine("aDo.setDeleteToken(\"VALID\");");
|
||||
method.addBodyLine("aDo.setUpdateTime(new Date());");
|
||||
method.addBodyLine("return " + mapperFieldName + ".updateByPrimaryKey(aDo);");
|
||||
@@ -769,8 +763,8 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addException(new FullyQualifiedJavaType("Throwable"));
|
||||
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : example.getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue())");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0)");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(0);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("if (example.getRows() != null && example.getOffset() != null) {");
|
||||
method.addBodyLine(" List<Long> primaryKeyList = " + mapperFieldName + ".selectPrimaryKeyByExample(example);");
|
||||
@@ -799,8 +793,8 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addException(new FullyQualifiedJavaType("Throwable"));
|
||||
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : example.getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue())");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.HIDDEN.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0)");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(1);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("if (example.getRows() != null && example.getOffset() != null) {");
|
||||
method.addBodyLine(" List<Long> primaryKeyList = " + mapperFieldName + ".selectPrimaryKeyByExample(example);");
|
||||
@@ -828,8 +822,8 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addException(new FullyQualifiedJavaType("Throwable"));
|
||||
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : example.getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue())");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.NONE.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0)");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(0);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("return " + mapperFieldName + ".countByExample(example);");
|
||||
|
||||
@@ -845,8 +839,8 @@ public class TapeRepositoryGeneratorPlugin extends PluginAdapter {
|
||||
method.addException(new FullyQualifiedJavaType("Throwable"));
|
||||
|
||||
method.addBodyLine("for (" + exampleClassName + ".Criteria criteria : example.getOredCriteria()) {");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(DatabaseCommonDataIsDeleteEnum.NONE.getValue())");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(DatabaseCommonDataIsHiddenEnum.HIDDEN.getValue());");
|
||||
method.addBodyLine(" criteria.andIsDeleteEqualTo(0)");
|
||||
method.addBodyLine(" .andIsHiddenEqualTo(1);");
|
||||
method.addBodyLine("}");
|
||||
method.addBodyLine("return " + mapperFieldName + ".countByExample(example);");
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>所有类 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>所有类 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:47 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>TapeMybatisGeneratorPlugin (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>TapeRepositoryGeneratorPlugin (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>TapeRepoviewGeneratorPlugin (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>AbstractWithLimitPlugin (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.abstracts.AbstractWithLimitPlugin的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.abstracts (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.abstracts (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.abstracts 类分层结构 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>程序包 com.iqudoo.framework.mybatis.abstracts的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.TapeMybatisGeneratorPlugin的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.TapeRepositoryGeneratorPlugin的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.TapeRepoviewGeneratorPlugin的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>ISelectSelectivePluginHook (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>接口 com.iqudoo.framework.mybatis.hook.ISelectSelectivePluginHook的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.hook (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.hook (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.hook 类分层结构 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>程序包 com.iqudoo.framework.mybatis.hook的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis 类分层结构 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>程序包 com.iqudoo.framework.mybatis的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:01 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>ElementTools (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>FormatTools (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.utils.ElementTools的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类 com.iqudoo.framework.mybatis.utils.FormatTools的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.utils (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.utils (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>com.iqudoo.framework.mybatis.utils 类分层结构 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>程序包 com.iqudoo.framework.mybatis.utils的使用 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>常量字段值 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>已过时的列表 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>API 帮助 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>索引 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>tape-mybatis-generator-plugin 1.0-SNAPSHOT API</title>
|
||||
<script type="text/javascript">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>概览列表 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>概览 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<!-- NewPage -->
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:05:02 CST 2026 -->
|
||||
<!-- Generated by javadoc (1.8.0_352) on Wed Feb 04 03:57:48 CST 2026 -->
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>类分层结构 (tape-mybatis-generator-plugin 1.0-SNAPSHOT API)</title>
|
||||
<meta name="date" content="2026-02-04">
|
||||
|
||||
Binary file not shown.
@@ -2,18 +2,18 @@ cmd.exe
|
||||
/X
|
||||
/C
|
||||
""D:\Program Files\JetBrains\Jdks\corretto-1.8.0_352\bin\javadoc.exe" @options @argfile"
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\allclasses-frame.html = 1770145502546
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\allclasses-noframe.html = 1770145502549
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\argfile = 1770145498938
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\constant-values.html = 1770145502237
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\deprecated-list.html = 1770145502540
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\help-doc.html = 1770145502562
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\index-all.html = 1770145502527
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\index.html = 1770145502553
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\options = 1770145498936
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-frame.html = 1770145502029
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-summary.html = 1770145502557
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-tree.html = 1770145502449
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\package-list = 1770145502025
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\script.js = 1770145502744
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\allclasses-frame.html = 1770148668609
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\allclasses-noframe.html = 1770148668611
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\argfile = 1770148666484
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\constant-values.html = 1770148668331
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\deprecated-list.html = 1770148668605
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\help-doc.html = 1770148668623
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\index-all.html = 1770148668587
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\index.html = 1770148668614
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\options = 1770148666481
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-frame.html = 1770148668179
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-summary.html = 1770148668618
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\overview-tree.html = 1770148668576
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\package-list = 1770148668174
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\script.js = 1770148668625
|
||||
D:\gitea\tools\tape-mybatis-generator-plugin\target\apidocs\stylesheet.css = 1770145502740
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user