java - 如何为mybatis生成器插件生成的'Example'配置基类
问题描述
mybatis生成器插件生成的“Example”如何配置基类,或者生成器插件可以为“Example”配置基类吗?
解决方案
可以使用自定义插件。
如果您只需要扩展基类,那很容易。
package mygroup.myplugin;
import java.util.List;
import org.mybatis.generator.api.IntrospectedTable;
import org.mybatis.generator.api.PluginAdapter;
import org.mybatis.generator.api.dom.java.FullyQualifiedJavaType;
import org.mybatis.generator.api.dom.java.TopLevelClass;
public class ExampleSuperclassPlugin extends PluginAdapter {
@Override
public boolean validate(List<String> warnings) {
return true;
}
@Override
public boolean modelExampleClassGenerated(
TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {
// Add import
topLevelClass.addImportedType(new FullyQualifiedJavaType("your.pkg.ExampleBase"));
// Add 'extends ExampleBase'
topLevelClass.setSuperClass("ExampleBase");
return true;
}
}
在generatorConfig.xml
中,添加<plugin />
条目。
<generatorConfiguration>
...
<context ...>
<plugin type="mygroup.myplugin.ExampleSuperclassPlugin" />
...
确保在运行 Generator 时自定义插件 JAR 包含在类路径中。例如,如果您使用 Generator Maven 插件,请将其作为依赖项添加到pom.xml
.
<build>
...
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.7</version>
<dependencies>
<dependency>
<groupId>mygroup</groupId>
<artifactId>myplugin</artifactId>
<version>0.0.1</version>
</dependency>
...
推荐阅读
- amazon-web-services - 尽管输入了准确的话语,AWS Lex 仍匹配错误的意图
- javascript - ScrollIntoView() 不起作用 - vanilla JS,为什么?
- ios - 如何使用导航栏过渡到视图控制器?
- android - 使用 --env.aot 标志时未构建 Nativescript 应用程序
- sql - SQL Server:仅结合没有参考的日期
- html - 使图像适合 div 并相应调整大小
- uwp - 每次运行 UWP 命令而不是 onclick 事件
- android - 使用 Chrome DevTools (Stetho) 提取 Sqlite 数据库
- ios - 在 AppStore 上,如何按地区以不同方式更新我的应用程序?
- scala - 将 SparkSQL 的输出打印到数据框