【Mybatis】Mybatis-Generator-batch Delete(一括削除)メソッドプラグイン
記事の目次シリーズ クライテリア 装備 Core-Core sql mybatis-mplement plugin-code plugin-common-tool 使用方法 generatoConfig.xml pom.xml Github 著者 シリーズ【Mybatis】Mybatis-Generator-Paost gresqlはメインキープラグイン に戻ります.【Mybatis】Mybatis-Generator-Oracleは、メインキープラグイン に戻る.【Mybatis】Mybatis-Generator-batDelete(一括削除)メソッドプラグイン [Mybatis]Mybatis-Generator-Paost gresql&Mysql(一括追加)メソッドプラグイン [Mybatis]Mybatis-Generator-Oracle(一括追加)メソッドプラグイン [Mybatis]Mybatis-Generator-Myysql(一括更新)メソッドプラグイン [Mybatis]Mybatis-Generator-Paost gresql(一括更新)メソッドプラグイン [Mybatis]Mybatis-Generator-Oracle(一括更新)メソッドプラグイン 【Mybatis】Mybatis-Generator-Tool JavaとXmlのMethodツールクラス 前言
一括削除SQLは簡単で一般的ですので、プラグインも簡単です.コアコードを貼り付けます.他にGITHUBを見てください.
ギthubではmybatis-generatorに対してまだいろんなタイプのプラグインがあります.本当に怠惰に見ています.そして複雑な機能が多すぎて、私は簡単に自分の必要なものを作ります.
装備 maven Core-Coode
sql
プラグインの一般的な方法/ツール、上記の生成方法はツールの種類に基づいて、下のブログはソースコードがあります.本当に必要なのはgithubを見ることができます.
【Mybatis】Mybatis-Generator-Taol JavaとXmlのMethodツール類を生成する
使い方
generator Config.xml
https://github.com/ithuhui/hui-mybatis-plugins/tree/master/src/main/java/com/hui/mybatis/plugins
作者
一括削除SQLは簡単で一般的ですので、プラグインも簡単です.コアコードを貼り付けます.他にGITHUBを見てください.
ギthubではmybatis-generatorに対してまだいろんなタイプのプラグインがあります.本当に怠惰に見ています.そして複雑な機能が多すぎて、私は簡単に自分の必要なものを作ります.
装備
<dependencies>
<dependency>
<groupId>org.mybatisgroupId>
<artifactId>mybatisartifactId>
<version>3.4.6version>
dependency>
<dependency>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-coreartifactId>
<version>1.3.7version>
dependency>
dependencies>
sql
delete from T_HUI_ORDER where ORDER_ID in(?,?,?);
mybatis-mplement <delete id="batchDelete" parameterType="java.lang.String">
delete from T_HUI_ORDER where ORDER_ID in (
<foreach collection="ids" index="index" item="item" separator=",">
#{item}
foreach>
)
delete>
plugin-code/**
* BatchDeletePlugin
*
* Description:
*
* Creation Time: 2018/12/10 0:48.
*
* @author HuWeihui
*/
public class BatchDeletePlugin extends PluginAdapter {
private final static String BATCH_DELETE = "batchDelete";
private final static String PARAMETER_NAME = "ids";
@Override
public boolean validate(List<String> list) {
return true;
}
@Override
public boolean clientGenerated(Interface interfaze, TopLevelClass topLevelClass, IntrospectedTable introspectedTable) {
if (BaseGenTool.isMybatisMode(introspectedTable)) {
MethodGeneratorTool.defaultBatchDeleteMethodGen(interfaze,introspectedTable,context);
}
return super.clientGenerated(interfaze, topLevelClass, introspectedTable);
}
@Override
public boolean sqlMapDocumentGenerated(Document document, IntrospectedTable introspectedTable) {
if (introspectedTable.getTargetRuntime().equals(IntrospectedTable.TargetRuntime.MYBATIS3)){
addSqlMapper(document, introspectedTable);
}
return super.sqlMapDocumentGenerated(document, introspectedTable);
}
/**
* xml
* @param document
* @param introspectedTable
*/
private void addSqlMapper(Document document, IntrospectedTable introspectedTable){
String tableName = introspectedTable.getFullyQualifiedTableNameAtRuntime();
String key = introspectedTable.getPrimaryKeyColumns().get(0).getActualColumnName();
String baseSql = String.format("delete from %s where %s in (",tableName,key);
FullyQualifiedJavaType paramType = introspectedTable.getPrimaryKeyColumns().get(0).getFullyQualifiedJavaType();
XmlElement deleteElement = SqlMapperGeneratorTool.baseElementGenerator(SqlMapperGeneratorTool.DELETE, BATCH_DELETE,paramType);
XmlElement foreachElement = SqlMapperGeneratorTool.baseForeachElementGenerator(PARAMETER_NAME,"item","index",null);
deleteElement.addElement(new TextElement(baseSql));
foreachElement.addAttribute(new Attribute("separator", ","));
foreachElement.addElement(new TextElement("#{item}"));
deleteElement.addElement(foreachElement);
deleteElement.addElement(new TextElement(")"));
document.getRootElement().addElement(deleteElement);
}
}
plugin-common-toolプラグインの一般的な方法/ツール、上記の生成方法はツールの種類に基づいて、下のブログはソースコードがあります.本当に必要なのはgithubを見ることができます.
【Mybatis】Mybatis-Generator-Taol JavaとXmlのMethodツール類を生成する
使い方
generator Config.xml
<plugin type="com.hui.mybatis.plugins.BatchDeletePlugin"/>
pom.xml<build>
<plugins>
<plugin>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-maven-pluginartifactId>
<version>${mybatis.generator}version>
<configuration>
<configurationFile>
${basedir}/src/main/resources/generator/generatorConfig.xml
configurationFile>
<verbose>trueverbose>
<overwrite>trueoverwrite>
configuration>
<dependencies>
<dependency>
<groupId>org.mybatis.generatorgroupId>
<artifactId>mybatis-generator-coreartifactId>
<version>${mybatis.generator}version>
dependency>
<dependency>
<groupId>com.hui.mybatis.pluginsgroupId>
<artifactId>hui-mybatis-pluginsartifactId>
<version>0.0.1-SNAPSHOTversion>
dependency>
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<version>5.1.44version>
dependency>
<dependency>
<groupId>com.oraclegroupId>
<artifactId>ojdbc6artifactId>
<version>11.1.0.7.0version>
dependency>
<dependency>
<groupId>org.postgresqlgroupId>
<artifactId>postgresqlartifactId>
<version>${postgresql.version}version>
dependency>
dependencies>
plugin>
plugins>
build>
Githubhttps://github.com/ithuhui/hui-mybatis-plugins/tree/master/src/main/java/com/hui/mybatis/plugins
作者
:HuHui
: web , ,