逆向工程调整
This commit is contained in:
@@ -15,7 +15,7 @@ public class GeneratorCodeMain {
|
|||||||
try {
|
try {
|
||||||
// 解析
|
// 解析
|
||||||
ConfigurationParser cp = new ConfigurationParser(warnings);
|
ConfigurationParser cp = new ConfigurationParser(warnings);
|
||||||
Configuration config = cp.parseConfiguration(GeneratorCodeMain.class.getResourceAsStream("/mybatis-generator-tk.xml"));
|
Configuration config = cp.parseConfiguration(GeneratorCodeMain.class.getResourceAsStream("/mybatis-generator.xml"));
|
||||||
// 是否覆盖
|
// 是否覆盖
|
||||||
DefaultShellCallback dsc = new DefaultShellCallback(false);
|
DefaultShellCallback dsc = new DefaultShellCallback(false);
|
||||||
MyBatisGenerator mg = new MyBatisGenerator(config, dsc, warnings);
|
MyBatisGenerator mg = new MyBatisGenerator(config, dsc, warnings);
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package generator.defined;
|
package generator.defined;
|
||||||
|
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.mybatis.generator.api.CommentGenerator;
|
import org.mybatis.generator.api.CommentGenerator;
|
||||||
import org.mybatis.generator.api.IntrospectedColumn;
|
import org.mybatis.generator.api.IntrospectedColumn;
|
||||||
import org.mybatis.generator.api.IntrospectedTable;
|
import org.mybatis.generator.api.IntrospectedTable;
|
||||||
@@ -63,6 +64,8 @@ public class MyCommentGenerator extends DefaultCommentGenerator implements Comme
|
|||||||
topLevelClass.addJavaDocLine(" * @author " + author);
|
topLevelClass.addJavaDocLine(" * @author " + author);
|
||||||
topLevelClass.addJavaDocLine(" * @date " + currentDateStr);
|
topLevelClass.addJavaDocLine(" * @date " + currentDateStr);
|
||||||
topLevelClass.addJavaDocLine(" */");
|
topLevelClass.addJavaDocLine(" */");
|
||||||
|
String tableName = "\"" +introspectedTable.getFullyQualifiedTableNameAtRuntime()+"\"";
|
||||||
|
topLevelClass.addAnnotation("@Table(name = "+tableName+")");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ import org.mybatis.generator.codegen.mybatis3.IntrospectedTableMyBatis3Impl;
|
|||||||
import org.mybatis.generator.codegen.mybatis3.ListUtilities;
|
import org.mybatis.generator.codegen.mybatis3.ListUtilities;
|
||||||
import org.mybatis.generator.codegen.mybatis3.MyBatis3FormattingUtilities;
|
import org.mybatis.generator.codegen.mybatis3.MyBatis3FormattingUtilities;
|
||||||
import org.mybatis.generator.codegen.mybatis3.javamapper.JavaMapperGenerator;
|
import org.mybatis.generator.codegen.mybatis3.javamapper.JavaMapperGenerator;
|
||||||
import org.mybatis.generator.codegen.mybatis3.javamapper.elements.SelectByExampleWithBLOBsMethodGenerator;
|
|
||||||
import org.mybatis.generator.codegen.mybatis3.xmlmapper.XMLMapperGenerator;
|
import org.mybatis.generator.codegen.mybatis3.xmlmapper.XMLMapperGenerator;
|
||||||
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.AbstractXmlElementGenerator;
|
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.AbstractXmlElementGenerator;
|
||||||
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.InsertSelectiveElementGenerator;
|
import org.mybatis.generator.codegen.mybatis3.xmlmapper.elements.InsertSelectiveElementGenerator;
|
||||||
@@ -71,17 +70,6 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
return JavaBeansUtil.getCamelCaseString(tableName,true);
|
return JavaBeansUtil.getCamelCaseString(tableName,true);
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isConfigTable() {
|
|
||||||
String tableName = this.getTableConfiguration().getTableName();
|
|
||||||
String tableSuffix = tableName.substring(tableName.lastIndexOf("_") + 1);
|
|
||||||
if(StringUtils.isNotBlank(tableSuffix) && tableSuffix.length() == 32){
|
|
||||||
//企业库
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
//平台库
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String calculateMyBatis3XmlMapperFileName() {
|
protected String calculateMyBatis3XmlMapperFileName() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
@@ -210,7 +198,7 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
addResultMapWithBLOBsElement(answer);
|
addResultMapWithBLOBsElement(answer);
|
||||||
addBaseColumnListElement(answer);
|
addBaseColumnListElement(answer);
|
||||||
addBlobColumnListElement(answer);
|
addBlobColumnListElement(answer);
|
||||||
addInsertSelectiveElement(answer);
|
/*addInsertSelectiveElement(answer);
|
||||||
addUpdateByPrimaryKeySelectiveElement(answer);
|
addUpdateByPrimaryKeySelectiveElement(answer);
|
||||||
addMyBatis3UpdateByExampleWhereClauseElement(answer);
|
addMyBatis3UpdateByExampleWhereClauseElement(answer);
|
||||||
addExampleWhereClauseElement(answer);
|
addExampleWhereClauseElement(answer);
|
||||||
@@ -218,7 +206,7 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
addSelectByExampleWithoutBLOBsElement(answer);
|
addSelectByExampleWithoutBLOBsElement(answer);
|
||||||
addUpdateByExampleWithBLOBsElement(answer);
|
addUpdateByExampleWithBLOBsElement(answer);
|
||||||
addUpdateByExampleWithoutBLOBsElement(answer);
|
addUpdateByExampleWithoutBLOBsElement(answer);
|
||||||
addUpdateByExampleSelectiveElement(answer);
|
addUpdateByExampleSelectiveElement(answer);*/
|
||||||
return answer;
|
return answer;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -276,9 +264,11 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
interfaze.addSuperInterface(fqjt);
|
interfaze.addSuperInterface(fqjt);
|
||||||
interfaze.addImportedType(fqjt);
|
interfaze.addImportedType(fqjt);
|
||||||
}
|
}
|
||||||
interfaze.addImportedType(new FullyQualifiedJavaType("org.apache.ibatis.annotations.Param"));
|
interfaze.addSuperInterface(new FullyQualifiedJavaType("tk.mybatis.mapper.common.Mapper<"+getTableNameFromConfigFile()+"DO>"));
|
||||||
addInsertSelectiveMethod(interfaze);
|
interfaze.addImportedType(new FullyQualifiedJavaType("tk.mybatis.mapper.common.Mapper"));
|
||||||
addUpdateByPrimaryKeySelectiveMethod(interfaze);
|
interfaze.addImportedType(new FullyQualifiedJavaType(calculateJavaModelPackage() + "."+getTableNameFromConfigFile()+"DO"));
|
||||||
|
//addInsertSelectiveMethod(interfaze);
|
||||||
|
//addUpdateByPrimaryKeySelectiveMethod(interfaze);
|
||||||
List<Method> methods = interfaze.getMethods();
|
List<Method> methods = interfaze.getMethods();
|
||||||
for (Method method : methods) {
|
for (Method method : methods) {
|
||||||
List<Parameter> parameters = method.getParameters();
|
List<Parameter> parameters = method.getParameters();
|
||||||
@@ -287,10 +277,10 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
parameter.addAnnotation("@Param(\""+ name+"\")");
|
parameter.addAnnotation("@Param(\""+ name+"\")");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
addSelectByExampleWithBLOBsMethod(interfaze);
|
/*addSelectByExampleWithBLOBsMethod(interfaze);
|
||||||
addSelectByExampleWithoutBLOBsMethod(interfaze);
|
addSelectByExampleWithoutBLOBsMethod(interfaze);
|
||||||
addUpdateByExampleSelectiveMethod(interfaze);
|
addUpdateByExampleSelectiveMethod(interfaze);
|
||||||
addUpdateByExampleWithoutBLOBsMethod(interfaze);
|
addUpdateByExampleWithoutBLOBsMethod(interfaze);*/
|
||||||
List<CompilationUnit> answer = new ArrayList<CompilationUnit>();
|
List<CompilationUnit> answer = new ArrayList<CompilationUnit>();
|
||||||
if (context.getPlugins().clientGenerated(interfaze, null, introspectedTable)) {
|
if (context.getPlugins().clientGenerated(interfaze, null, introspectedTable)) {
|
||||||
answer.add(interfaze);
|
answer.add(interfaze);
|
||||||
@@ -491,54 +481,4 @@ public class MyIntrospectedTableMyBatis3Impl extends IntrospectedTableMyBatis3Im
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class MySelectByExampleWithBLOBsMethodGenerator extends SelectByExampleWithBLOBsMethodGenerator {
|
|
||||||
public MySelectByExampleWithBLOBsMethodGenerator() {
|
|
||||||
super();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addInterfaceElements(Interface interfaze) {
|
|
||||||
Set<FullyQualifiedJavaType> importedTypes = new TreeSet<FullyQualifiedJavaType>();
|
|
||||||
FullyQualifiedJavaType type = new FullyQualifiedJavaType(
|
|
||||||
introspectedTable.getExampleType());
|
|
||||||
importedTypes.add(type);
|
|
||||||
importedTypes.add(FullyQualifiedJavaType.getNewListInstance());
|
|
||||||
|
|
||||||
Method method = new Method();
|
|
||||||
method.setVisibility(JavaVisibility.PUBLIC);
|
|
||||||
|
|
||||||
FullyQualifiedJavaType returnType = FullyQualifiedJavaType
|
|
||||||
.getNewListInstance();
|
|
||||||
FullyQualifiedJavaType listType;
|
|
||||||
if (introspectedTable.getRules().generateRecordWithBLOBsClass()) {
|
|
||||||
listType = new FullyQualifiedJavaType(introspectedTable
|
|
||||||
.getRecordWithBLOBsType());
|
|
||||||
} else {
|
|
||||||
// the blob fields must be rolled up into the base class
|
|
||||||
listType = new FullyQualifiedJavaType(introspectedTable
|
|
||||||
.getBaseRecordType());
|
|
||||||
}
|
|
||||||
|
|
||||||
importedTypes.add(listType);
|
|
||||||
returnType.addTypeArgument(listType);
|
|
||||||
method.setReturnType(returnType);
|
|
||||||
method.setName(introspectedTable
|
|
||||||
.getSelectByExampleWithBLOBsStatementId());
|
|
||||||
method.addParameter(new Parameter(type, "example")); //$NON-NLS-1$
|
|
||||||
|
|
||||||
context.getCommentGenerator().addGeneralMethodComment(method,
|
|
||||||
introspectedTable);
|
|
||||||
|
|
||||||
addMapperAnnotations(interfaze, method);
|
|
||||||
|
|
||||||
if (context.getPlugins()
|
|
||||||
.clientSelectByExampleWithBLOBsMethodGenerated(method, interfaze,
|
|
||||||
introspectedTable)) {
|
|
||||||
addExtraImports(interfaze);
|
|
||||||
interfaze.addImportedTypes(importedTypes);
|
|
||||||
interfaze.addMethod(method);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ public class MyPluginAdapter extends PluginAdapter {
|
|||||||
topLevelClass.addImportedType("lombok.NoArgsConstructor");
|
topLevelClass.addImportedType("lombok.NoArgsConstructor");
|
||||||
topLevelClass.addImportedType("lombok.AllArgsConstructor");
|
topLevelClass.addImportedType("lombok.AllArgsConstructor");
|
||||||
topLevelClass.addImportedType("io.swagger.annotations.ApiModelProperty");
|
topLevelClass.addImportedType("io.swagger.annotations.ApiModelProperty");
|
||||||
|
topLevelClass.addImportedType("javax.persistence.Table");
|
||||||
topLevelClass.addAnnotation("@Data");
|
topLevelClass.addAnnotation("@Data");
|
||||||
topLevelClass.addAnnotation("@Builder");
|
topLevelClass.addAnnotation("@Builder");
|
||||||
topLevelClass.addAnnotation("@NoArgsConstructor");
|
topLevelClass.addAnnotation("@NoArgsConstructor");
|
||||||
|
|||||||
@@ -29,8 +29,8 @@
|
|||||||
<!-- targetPackage:mapper接口生成的位置 -->
|
<!-- targetPackage:mapper接口生成的位置 -->
|
||||||
<javaClientGenerator targetPackage="com.cool.store.mapper" targetProject="coolstore-partner-dao/src/main/java" type="XMLMAPPER" />
|
<javaClientGenerator targetPackage="com.cool.store.mapper" targetProject="coolstore-partner-dao/src/main/java" type="XMLMAPPER" />
|
||||||
|
|
||||||
<table tableName="${table.name}" enableCountByExample="false" enableUpdateByExample="true" enableDeleteByExample="false"
|
<table tableName="${table.name}" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false"
|
||||||
enableSelectByExample="true" selectByExampleQueryId="true">
|
enableSelectByExample="false" selectByExampleQueryId="false">
|
||||||
<generatedKey column="id" sqlStatement="Mysql" identity="true" type=""/>
|
<generatedKey column="id" sqlStatement="Mysql" identity="true" type=""/>
|
||||||
</table>
|
</table>
|
||||||
</context>
|
</context>
|
||||||
|
|||||||
Reference in New Issue
Block a user