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
a53e8e05
Commit
a53e8e05
authored
May 07, 2018
by
hewei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
乐观锁插件支持自定义nextVersion
parent
b0d01d16
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
61 additions
and
2 deletions
+61
-2
src/main/java/com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
...com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
+14
-0
src/main/java/com/itfsw/mybatis/generator/plugins/OptimisticLockerPlugin.java
...fsw/mybatis/generator/plugins/OptimisticLockerPlugin.java
+25
-2
src/main/java/com/itfsw/mybatis/generator/plugins/utils/hook/HookAggregator.java
.../mybatis/generator/plugins/utils/hook/HookAggregator.java
+10
-0
src/main/java/com/itfsw/mybatis/generator/plugins/utils/hook/IModelBuilderPluginHook.java
...generator/plugins/utils/hook/IModelBuilderPluginHook.java
+12
-0
No files found.
src/main/java/com/itfsw/mybatis/generator/plugins/IncrementsPlugin.java
View file @
a53e8e05
...
@@ -237,6 +237,20 @@ public class IncrementsPlugin extends BasePlugin implements IModelBuilderPluginH
...
@@ -237,6 +237,20 @@ public class IncrementsPlugin extends BasePlugin implements IModelBuilderPluginH
return
true
;
return
true
;
}
}
/**
* Model builder set 方法生成
* @param method
* @param topLevelClass
* @param builderClass
* @param introspectedColumn
* @param introspectedTable
* @return
*/
@Override
public
boolean
modelBuilderSetterMethodGenerated
(
Method
method
,
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
IntrospectedColumn
introspectedColumn
,
IntrospectedTable
introspectedTable
)
{
return
true
;
}
// =============================================== IIncrementsPluginHook ===================================================
// =============================================== IIncrementsPluginHook ===================================================
/**
/**
...
...
src/main/java/com/itfsw/mybatis/generator/plugins/OptimisticLockerPlugin.java
View file @
a53e8e05
...
@@ -200,9 +200,18 @@ public class OptimisticLockerPlugin extends BasePlugin implements IModelBuilderP
...
@@ -200,9 +200,18 @@ public class OptimisticLockerPlugin extends BasePlugin implements IModelBuilderP
return
super
.
modelSetterMethodGenerated
(
method
,
topLevelClass
,
introspectedColumn
,
introspectedTable
,
modelClassType
);
return
super
.
modelSetterMethodGenerated
(
method
,
topLevelClass
,
introspectedColumn
,
introspectedTable
,
modelClassType
);
}
}
/**
* Model builder set 方法生成
* @param method
* @param topLevelClass
* @param builderClass
* @param introspectedColumn
* @param introspectedTable
* @return
*/
@Override
@Override
public
boolean
modelBuilder
ClassGenerated
(
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
List
<
IntrospectedColumn
>
columns
,
IntrospectedTable
introspectedTable
)
{
public
boolean
modelBuilder
SetterMethodGenerated
(
Method
method
,
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
IntrospectedColumn
introspectedColumn
,
IntrospectedTable
introspectedTable
)
{
if
(
this
.
versionColumn
!=
null
&&
this
.
customizedNextVersion
)
{
if
(
this
.
versionColumn
!=
null
&&
this
.
customizedNextVersion
&&
introspectedColumn
.
getActualColumnName
().
equals
(
this
.
versionColumn
.
getActualColumnName
())
)
{
// nextVersion 方法
// nextVersion 方法
Method
nextVersion
=
JavaElementGeneratorTools
.
generateMethod
(
Method
nextVersion
=
JavaElementGeneratorTools
.
generateMethod
(
METHOD_NEXT_VERSION
,
METHOD_NEXT_VERSION
,
...
@@ -222,9 +231,23 @@ public class OptimisticLockerPlugin extends BasePlugin implements IModelBuilderP
...
@@ -222,9 +231,23 @@ public class OptimisticLockerPlugin extends BasePlugin implements IModelBuilderP
FormatTools
.
addMethodWithBestPosition
(
builderClass
,
nextVersion
);
FormatTools
.
addMethodWithBestPosition
(
builderClass
,
nextVersion
);
}
}
return
true
;
return
true
;
}
}
/**
* Model builder class 生成
* @param topLevelClass
* @param builderClass
* @param columns
* @param introspectedTable
* @return
*/
@Override
public
boolean
modelBuilderClassGenerated
(
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
List
<
IntrospectedColumn
>
columns
,
IntrospectedTable
introspectedTable
)
{
return
false
;
}
// ========================================= sqlMap 生成 ============================================
// ========================================= sqlMap 生成 ============================================
@Override
@Override
...
...
src/main/java/com/itfsw/mybatis/generator/plugins/utils/hook/HookAggregator.java
View file @
a53e8e05
...
@@ -125,6 +125,16 @@ public class HookAggregator implements IUpsertPluginHook, IModelBuilderPluginHoo
...
@@ -125,6 +125,16 @@ public class HookAggregator implements IUpsertPluginHook, IModelBuilderPluginHoo
return
true
;
return
true
;
}
}
@Override
public
boolean
modelBuilderSetterMethodGenerated
(
Method
method
,
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
IntrospectedColumn
introspectedColumn
,
IntrospectedTable
introspectedTable
)
{
for
(
IModelBuilderPluginHook
plugin
:
this
.
getPlugins
(
IModelBuilderPluginHook
.
class
))
{
if
(!
plugin
.
modelBuilderSetterMethodGenerated
(
method
,
topLevelClass
,
builderClass
,
introspectedColumn
,
introspectedTable
))
{
return
false
;
}
}
return
true
;
}
// ================================================= IUpsertPluginHook ===============================================
// ================================================= IUpsertPluginHook ===============================================
@Override
@Override
...
...
src/main/java/com/itfsw/mybatis/generator/plugins/utils/hook/IModelBuilderPluginHook.java
View file @
a53e8e05
...
@@ -19,6 +19,7 @@ package com.itfsw.mybatis.generator.plugins.utils.hook;
...
@@ -19,6 +19,7 @@ package com.itfsw.mybatis.generator.plugins.utils.hook;
import
org.mybatis.generator.api.IntrospectedColumn
;
import
org.mybatis.generator.api.IntrospectedColumn
;
import
org.mybatis.generator.api.IntrospectedTable
;
import
org.mybatis.generator.api.IntrospectedTable
;
import
org.mybatis.generator.api.dom.java.InnerClass
;
import
org.mybatis.generator.api.dom.java.InnerClass
;
import
org.mybatis.generator.api.dom.java.Method
;
import
org.mybatis.generator.api.dom.java.TopLevelClass
;
import
org.mybatis.generator.api.dom.java.TopLevelClass
;
import
java.util.List
;
import
java.util.List
;
...
@@ -41,4 +42,15 @@ public interface IModelBuilderPluginHook {
...
@@ -41,4 +42,15 @@ public interface IModelBuilderPluginHook {
* @return
* @return
*/
*/
boolean
modelBuilderClassGenerated
(
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
List
<
IntrospectedColumn
>
columns
,
IntrospectedTable
introspectedTable
);
boolean
modelBuilderClassGenerated
(
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
List
<
IntrospectedColumn
>
columns
,
IntrospectedTable
introspectedTable
);
/**
* Model builder set 方法生成
* @param method
* @param topLevelClass
* @param builderClass
* @param introspectedColumn
* @param introspectedTable
* @return
*/
boolean
modelBuilderSetterMethodGenerated
(
Method
method
,
TopLevelClass
topLevelClass
,
InnerClass
builderClass
,
IntrospectedColumn
introspectedColumn
,
IntrospectedTable
introspectedTable
);
}
}
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