mirror of
https://gitee.com/mybatis-flex/mybatis-flex.git
synced 2025-12-06 16:48:24 +08:00
Merge pull request #495 from coder-xiaomo/feat-base-override
feat: Codegen 生成 entity base 时支持设置是否覆盖已有文件
This commit is contained in:
commit
be123d50d0
@ -303,6 +303,7 @@ globalConfig.getTemplateConfig()
|
||||
| setSuperClass(Class) | Entity 类的父类,可以自定义一些 BaseEntity 类 | null |
|
||||
| setSuperClassFactory(Function<Table, Class>) | Entity 类的父类工厂,可以用于对特定的 Class 设置父类,而非全部 Entity 的父类 | null |
|
||||
| setOverwriteEnable(boolean) | 是否覆盖之前生成的文件 | false |
|
||||
| setEntityBaseOverwriteEnable(boolean) | 生成Base类时是否覆盖之前生成的文件 | false |
|
||||
| setImplInterfaces(Class[]) | Entity 默认实现的接口 | Serializable.class |
|
||||
| setWithLombok(boolean) | Entity 是否使用 Lombok 注解 | false |
|
||||
| setWithSwagger(boolean) | Entity 是否使用 Swagger 注解 | false |
|
||||
|
||||
@ -60,6 +60,11 @@ public class EntityConfig implements Serializable {
|
||||
*/
|
||||
private boolean overwriteEnable;
|
||||
|
||||
/**
|
||||
* 生成Base类时是否覆盖之前生成的文件。
|
||||
*/
|
||||
private boolean baseOverwriteEnable;
|
||||
|
||||
/**
|
||||
* Entity 默认实现的接口。
|
||||
*/
|
||||
@ -228,6 +233,21 @@ public class EntityConfig implements Serializable {
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 生成Base类时是否覆盖原有文件。
|
||||
*/
|
||||
public boolean isBaseOverwriteEnable() {
|
||||
return baseOverwriteEnable;
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置生成Base类时是否覆盖原有文件。
|
||||
*/
|
||||
public EntityConfig setBaseOverwriteEnable(boolean baseOverwriteEnable) {
|
||||
this.baseOverwriteEnable = baseOverwriteEnable;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取实现接口。
|
||||
*/
|
||||
|
||||
@ -888,6 +888,20 @@ public class GlobalConfig implements Serializable {
|
||||
getEntityConfig().setOverwriteEnable(entityOverwriteEnable);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see EntityConfig#isBaseOverwriteEnable()
|
||||
*/
|
||||
public boolean isEntityBaseOverwriteEnable() {
|
||||
return getEntityConfig().isBaseOverwriteEnable();
|
||||
}
|
||||
|
||||
/**
|
||||
* @see EntityConfig#setBaseOverwriteEnable(boolean)
|
||||
*/
|
||||
public void setEntityBaseOverwriteEnable(boolean entityBaseOverwriteEnable) {
|
||||
getEntityConfig().setBaseOverwriteEnable(entityBaseOverwriteEnable);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see EntityConfig#getClassPrefix()
|
||||
*/
|
||||
|
||||
@ -139,7 +139,9 @@ public class EntityGenerator implements IGenerator {
|
||||
|
||||
File baseEntityJavaFile = new File(sourceDir, baseEntityPackagePath + "/" + baseEntityClassName + globalConfig.getFileType());
|
||||
|
||||
|
||||
if (baseEntityJavaFile.exists() && !entityConfig.isBaseOverwriteEnable()) {
|
||||
return;
|
||||
}
|
||||
// 排除忽略列
|
||||
if (globalConfig.getStrategyConfig().getIgnoreColumns() != null) {
|
||||
table.getColumns().removeIf(column -> globalConfig.getStrategyConfig().getIgnoreColumns().contains(column.getName().toLowerCase()));
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user