Skip to content

Commit ff41844

Browse files
author
hewei
committed
升级mybatis-generator到最新版本1.3.6
1 parent 09c947d commit ff41844

File tree

3 files changed

+95
-9
lines changed

3 files changed

+95
-9
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
<dependency>
3333
<groupId>org.mybatis.generator</groupId>
3434
<artifactId>mybatis-generator-core</artifactId>
35-
<version>1.3.5</version>
35+
<version>1.3.6</version>
3636
<scope>provided</scope>
3737
</dependency>
3838
<!-- 日志 -->

src/main/java/com/itfsw/mybatis/generator/plugins/utils/enhanced/TemplateCommentGenerator.java

Lines changed: 88 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,23 @@
2424
import org.mybatis.generator.api.CommentGenerator;
2525
import org.mybatis.generator.api.IntrospectedColumn;
2626
import org.mybatis.generator.api.IntrospectedTable;
27+
import org.mybatis.generator.api.MyBatisGenerator;
2728
import org.mybatis.generator.api.dom.java.*;
2829
import org.mybatis.generator.api.dom.xml.TextElement;
2930
import org.mybatis.generator.api.dom.xml.XmlElement;
3031
import org.mybatis.generator.config.MergeConstants;
32+
import org.mybatis.generator.config.PropertyRegistry;
3133
import org.mybatis.generator.internal.util.StringUtility;
3234
import org.slf4j.Logger;
3335
import org.slf4j.LoggerFactory;
3436

37+
import javax.xml.bind.DatatypeConverter;
3538
import java.io.File;
3639
import java.io.InputStream;
3740
import java.io.StringWriter;
38-
import java.util.HashMap;
39-
import java.util.Map;
40-
import java.util.Properties;
41+
import java.util.*;
42+
43+
import static org.mybatis.generator.internal.util.StringUtility.isTrue;
4144

4245
/**
4346
* ---------------------------------------------------------------------------
@@ -52,6 +55,10 @@ public class TemplateCommentGenerator implements CommentGenerator {
5255

5356
private Map<EnumNode, Template> templates = new HashMap<>(); // 模板
5457

58+
private boolean suppressDate = false;
59+
60+
private boolean suppressAllComments = false;
61+
5562
/**
5663
* 构造函数
5764
* @param templatePath 模板路径
@@ -196,7 +203,11 @@ private void addXmlElementComment(XmlElement xmlElement, Map<String, Object> map
196203
*/
197204
@Override
198205
public void addConfigurationProperties(Properties properties) {
206+
suppressDate = isTrue(properties
207+
.getProperty(PropertyRegistry.COMMENT_GENERATOR_SUPPRESS_DATE));
199208

209+
suppressAllComments = isTrue(properties
210+
.getProperty(PropertyRegistry.COMMENT_GENERATOR_SUPPRESS_ALL_COMMENTS));
200211
}
201212

202213
/**
@@ -466,6 +477,80 @@ public void addRootComment(XmlElement rootElement) {
466477
addXmlElementComment(rootElement, map, EnumNode.ADD_ROOT_COMMENT);
467478
}
468479

480+
@Override
481+
public void addGeneralMethodAnnotation(Method method, IntrospectedTable introspectedTable,
482+
Set<FullyQualifiedJavaType> imports) {
483+
imports.add(new FullyQualifiedJavaType("javax.annotation.Generated")); //$NON-NLS-1$
484+
String comment = "Source Table: " + introspectedTable.getFullyQualifiedTable().toString(); //$NON-NLS-1$
485+
method.addAnnotation(getGeneratedAnnotation(comment));
486+
}
487+
488+
@Override
489+
public void addGeneralMethodAnnotation(Method method, IntrospectedTable introspectedTable,
490+
IntrospectedColumn introspectedColumn, Set<FullyQualifiedJavaType> imports) {
491+
imports.add(new FullyQualifiedJavaType("javax.annotation.Generated")); //$NON-NLS-1$
492+
String comment = "Source field: " //$NON-NLS-1$
493+
+ introspectedTable.getFullyQualifiedTable().toString()
494+
+ "." //$NON-NLS-1$
495+
+ introspectedColumn.getActualColumnName();
496+
method.addAnnotation(getGeneratedAnnotation(comment));
497+
}
498+
499+
@Override
500+
public void addFieldAnnotation(Field field, IntrospectedTable introspectedTable,
501+
Set<FullyQualifiedJavaType> imports) {
502+
imports.add(new FullyQualifiedJavaType("javax.annotation.Generated")); //$NON-NLS-1$
503+
String comment = "Source Table: " + introspectedTable.getFullyQualifiedTable().toString(); //$NON-NLS-1$
504+
field.addAnnotation(getGeneratedAnnotation(comment));
505+
}
506+
507+
@Override
508+
public void addFieldAnnotation(Field field, IntrospectedTable introspectedTable,
509+
IntrospectedColumn introspectedColumn, Set<FullyQualifiedJavaType> imports) {
510+
imports.add(new FullyQualifiedJavaType("javax.annotation.Generated")); //$NON-NLS-1$
511+
String comment = "Source field: " //$NON-NLS-1$
512+
+ introspectedTable.getFullyQualifiedTable().toString()
513+
+ "." //$NON-NLS-1$
514+
+ introspectedColumn.getActualColumnName();
515+
field.addAnnotation(getGeneratedAnnotation(comment));
516+
}
517+
518+
@Override
519+
public void addClassAnnotation(InnerClass innerClass, IntrospectedTable introspectedTable,
520+
Set<FullyQualifiedJavaType> imports) {
521+
imports.add(new FullyQualifiedJavaType("javax.annotation.Generated")); //$NON-NLS-1$
522+
String comment = "Source Table: " + introspectedTable.getFullyQualifiedTable().toString(); //$NON-NLS-1$
523+
innerClass.addAnnotation(getGeneratedAnnotation(comment));
524+
}
525+
526+
private String getGeneratedAnnotation(String comment) {
527+
StringBuilder buffer = new StringBuilder();
528+
buffer.append("@Generated("); //$NON-NLS-1$
529+
if (suppressAllComments) {
530+
buffer.append('\"');
531+
} else {
532+
buffer.append("value=\""); //$NON-NLS-1$
533+
}
534+
535+
buffer.append(MyBatisGenerator.class.getName());
536+
buffer.append('\"');
537+
538+
if (!suppressDate && !suppressAllComments) {
539+
buffer.append(", date=\""); //$NON-NLS-1$
540+
buffer.append(DatatypeConverter.printDateTime(Calendar.getInstance()));
541+
buffer.append('\"');
542+
}
543+
544+
if (!suppressAllComments) {
545+
buffer.append(", comments=\""); //$NON-NLS-1$
546+
buffer.append(comment);
547+
buffer.append('\"');
548+
}
549+
550+
buffer.append(')');
551+
return buffer.toString();
552+
}
553+
469554
/**
470555
* 评论模板节点ID
471556
*/

src/test/java/com/itfsw/mybatis/generator/plugins/tools/AbstractShellCallback.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ public void refreshProject(String project) {
6767

6868
/**
6969
* 重载项目
70-
*
7170
* @param sqlSession
7271
* @param loader
7372
* @param packagz
@@ -92,7 +91,7 @@ public File getDirectory(String targetProject, String targetPackage) throws Shel
9291
}
9392

9493
StringBuilder sb = new StringBuilder();
95-
StringTokenizer st = new StringTokenizer(targetPackage, ".");
94+
StringTokenizer st = new StringTokenizer(targetPackage, ".");
9695
while (st.hasMoreTokens()) {
9796
sb.append(st.nextToken());
9897
sb.append(File.separatorChar);
@@ -112,23 +111,25 @@ public File getDirectory(String targetProject, String targetPackage) throws Shel
112111
/* (non-Javadoc)
113112
* @see org.mybatis.generator.api.ShellCallback#isMergeSupported()
114113
*/
114+
@Override
115115
public boolean isMergeSupported() {
116116
return false;
117117
}
118118

119119
/* (non-Javadoc)
120120
* @see org.mybatis.generator.api.ShellCallback#isOverwriteEnabled()
121121
*/
122+
@Override
122123
public boolean isOverwriteEnabled() {
123124
return true;
124125
}
125126

126127
/* (non-Javadoc)
127128
* @see org.mybatis.generator.api.ShellCallback#mergeJavaFile(java.lang.String, java.lang.String, java.lang.String[], java.lang.String)
128129
*/
129-
public String mergeJavaFile(String newFileSource,
130-
String existingFileFullPath, String[] javadocTags, String fileEncoding)
131-
throws ShellException {
130+
@Override
131+
public String mergeJavaFile(String newFileSource, File existingFile,
132+
String[] javadocTags, String fileEncoding) throws ShellException {
132133
throw new UnsupportedOperationException();
133134
}
134135
}

0 commit comments

Comments
 (0)