Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mybatis-generator-plugin
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
mybatis-generator-plugin
Commits
24368c58
Commit
24368c58
authored
Jun 21, 2017
by
hewei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增增量插件
parent
a4980ab0
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
301 additions
and
15 deletions
+301
-15
src/main/java/com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
...com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
+257
-1
src/main/java/com/itfsw/mybatis/generator/plugins/ModelBuilderPlugin.java
...m/itfsw/mybatis/generator/plugins/ModelBuilderPlugin.java
+21
-13
src/main/java/com/itfsw/mybatis/generator/plugins/SelectiveEnhancedPlugin.java
...sw/mybatis/generator/plugins/SelectiveEnhancedPlugin.java
+1
-1
src/main/java/com/itfsw/mybatis/generator/plugins/utils/XmlElementGeneratorTools.java
...tis/generator/plugins/utils/XmlElementGeneratorTools.java
+22
-0
No files found.
src/main/java/com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
View file @
24368c58
This diff is collapsed.
Click to expand it.
src/main/java/com/itfsw/mybatis/generator/plugins/ModelBuilderPlugin.java
View file @
24368c58
...
...
@@ -40,17 +40,6 @@ public class ModelBuilderPlugin extends BasePlugin {
public
static
final
String
BUILDER_CLASS_NAME
=
"Builder"
;
// Builder 类名
private
FullyQualifiedJavaType
inc
;
// 是否支持Increments
/**
* 初始化阶段
* 具体执行顺序 http://www.mybatis.org/generator/reference/pluggingIn.html
* @param introspectedTable
* @return
*/
@Override
public
void
initialized
(
IntrospectedTable
introspectedTable
)
{
this
.
inc
=
null
;
}
/**
* Model Methods 生成
* 具体执行顺序 http://www.mybatis.org/generator/reference/pluggingIn.html
...
...
@@ -153,8 +142,28 @@ public class ModelBuilderPlugin extends BasePlugin {
InnerEnum
eIncrements
=
new
InnerEnum
(
new
FullyQualifiedJavaType
(
"Inc"
));
eIncrements
.
setVisibility
(
JavaVisibility
.
PUBLIC
);
eIncrements
.
setStatic
(
true
);
eIncrements
.
addEnumConstant
(
"INC,DEC"
);
eIncrements
.
addEnumConstant
(
"INC(\"+\")"
);
eIncrements
.
addEnumConstant
(
"DEC(\"-\")"
);
commentGenerator
.
addEnumComment
(
eIncrements
,
introspectedTable
);
// 生成属性和构造函数
Field
fValue
=
new
Field
(
"value"
,
FullyQualifiedJavaType
.
getStringInstance
());
fValue
.
setVisibility
(
JavaVisibility
.
PRIVATE
);
fValue
.
setFinal
(
true
);
commentGenerator
.
addFieldComment
(
fValue
,
introspectedTable
);
eIncrements
.
addField
(
fValue
);
Method
mInc
=
new
Method
(
"Inc"
);
mInc
.
setConstructor
(
true
);
mInc
.
addBodyLine
(
"this.value = value;"
);
mInc
.
addParameter
(
new
Parameter
(
FullyQualifiedJavaType
.
getStringInstance
(),
"value"
));
commentGenerator
.
addGeneralMethodComment
(
mInc
,
introspectedTable
);
eIncrements
.
addMethod
(
mInc
);
logger
.
debug
(
"itfsw(数据Model属性对应Column获取插件):"
+
topLevelClass
.
getType
().
getShortName
()
+
".Column增加构造方法和column属性。"
);
Method
mValue
=
JavaElementGeneratorTools
.
generateGetterMethod
(
fValue
);
commentGenerator
.
addGeneralMethodComment
(
mValue
,
introspectedTable
);
eIncrements
.
addMethod
(
mValue
);
innerClass
.
addInnerEnum
(
eIncrements
);
// 增加field
Field
fIncrements
=
JavaElementGeneratorTools
.
generateField
(
...
...
@@ -208,5 +217,4 @@ public class ModelBuilderPlugin extends BasePlugin {
return
innerClass
;
}
}
src/main/java/com/itfsw/mybatis/generator/plugins/SelectiveEnhancedPlugin.java
View file @
24368c58
...
...
@@ -228,7 +228,7 @@ public class SelectiveEnhancedPlugin extends BasePlugin {
}
}
else
{
String
columnName
;
if
(
text
.
matches
(
".*
\\s*
=.*"
)){
if
(
text
.
matches
(
".*=.*"
)){
columnName
=
text
.
split
(
"="
)[
0
];
}
else
{
columnName
=
text
.
replaceAll
(
","
,
""
);
...
...
src/main/java/com/itfsw/mybatis/generator/plugins/utils/XmlElementGeneratorTools.java
View file @
24368c58
...
...
@@ -25,6 +25,7 @@ import org.mybatis.generator.api.dom.xml.XmlElement;
import
org.mybatis.generator.codegen.mybatis3.MyBatis3FormattingUtilities
;
import
org.mybatis.generator.config.GeneratedKey
;
import
java.util.ArrayList
;
import
java.util.Iterator
;
import
java.util.List
;
...
...
@@ -377,4 +378,25 @@ public class XmlElementGeneratorTools {
return
eleTrim
;
}
/**
* 查找指定xml节点下指定节点名称的元素
*
* @param xmlElement
* @param name
* @return
*/
public
static
List
<
XmlElement
>
findXmlElements
(
XmlElement
xmlElement
,
String
name
){
List
<
XmlElement
>
list
=
new
ArrayList
<>();
List
<
Element
>
elements
=
xmlElement
.
getElements
();
for
(
Element
ele
:
elements
)
{
if
(
ele
instanceof
XmlElement
)
{
XmlElement
xmlElement1
=
(
XmlElement
)
ele
;
if
(
name
.
equalsIgnoreCase
(
xmlElement1
.
getName
()))
{
list
.
add
(
xmlElement1
);
}
}
}
return
list
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment