Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fgqyxxlr
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
yaru
fgqyxxlr
Commits
4a44e097
Commit
4a44e097
authored
Sep 30, 2019
by
deng-cc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:修复mybatis别名类扫描无法配置多目录的情况
parent
81ec67d4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
19 deletions
+27
-19
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MyBatisConfig.java
+27
-19
No files found.
ruoyi-framework/src/main/java/com/ruoyi/framework/config/MyBatisConfig.java
View file @
4a44e097
...
...
@@ -5,6 +5,7 @@ import java.util.ArrayList;
import
java.util.HashSet
;
import
java.util.List
;
import
javax.sql.DataSource
;
import
org.apache.ibatis.io.VFS
;
import
org.apache.ibatis.session.SqlSessionFactory
;
import
org.mybatis.spring.SqlSessionFactoryBean
;
...
...
@@ -38,36 +39,43 @@ public class MyBatisConfig
{
ResourcePatternResolver
resolver
=
(
ResourcePatternResolver
)
new
PathMatchingResourcePatternResolver
();
MetadataReaderFactory
metadataReaderFactory
=
new
CachingMetadataReaderFactory
(
resolver
);
typeAliasesPackage
=
ResourcePatternResolver
.
CLASSPATH_ALL_URL_PREFIX
+
ClassUtils
.
convertClassNameToResourcePath
(
typeAliasesPackage
)
+
"/"
+
DEFAULT_RESOURCE_PATTERN
;
List
<
String
>
allResult
=
new
ArrayList
<
String
>()
;
try
{
List
<
String
>
result
=
new
ArrayList
<
String
>();
Resource
[]
resources
=
resolver
.
getResources
(
typeAliasesPackage
);
if
(
resources
!=
null
&&
resources
.
length
>
0
)
for
(
String
aliasesPackage
:
typeAliasesPackage
.
split
(
","
))
{
MetadataReader
metadataReader
=
null
;
for
(
Resource
resource
:
resources
)
List
<
String
>
result
=
new
ArrayList
<
String
>();
aliasesPackage
=
ResourcePatternResolver
.
CLASSPATH_ALL_URL_PREFIX
+
ClassUtils
.
convertClassNameToResourcePath
(
aliasesPackage
.
trim
())
+
"/"
+
DEFAULT_RESOURCE_PATTERN
;
Resource
[]
resources
=
resolver
.
getResources
(
aliasesPackage
);
if
(
resources
!=
null
&&
resources
.
length
>
0
)
{
if
(
resource
.
isReadable
())
MetadataReader
metadataReader
=
null
;
for
(
Resource
resource
:
resources
)
{
metadataReader
=
metadataReaderFactory
.
getMetadataReader
(
resource
);
try
{
result
.
add
(
Class
.
forName
(
metadataReader
.
getClassMetadata
().
getClassName
()).
getPackage
().
getName
());
}
catch
(
ClassNotFoundException
e
)
if
(
resource
.
isReadable
())
{
e
.
printStackTrace
();
metadataReader
=
metadataReaderFactory
.
getMetadataReader
(
resource
);
try
{
result
.
add
(
Class
.
forName
(
metadataReader
.
getClassMetadata
().
getClassName
()).
getPackage
().
getName
());
}
catch
(
ClassNotFoundException
e
)
{
e
.
printStackTrace
();
}
}
}
}
if
(
result
.
size
()
>
0
)
{
HashSet
<
String
>
hashResult
=
new
HashSet
<
String
>(
result
);
allResult
.
addAll
(
hashResult
);
}
}
if
(
r
esult
.
size
()
>
0
)
if
(
allR
esult
.
size
()
>
0
)
{
HashSet
<
String
>
h
=
new
HashSet
<
String
>(
result
);
result
.
clear
();
result
.
addAll
(
h
);
typeAliasesPackage
=
String
.
join
(
","
,
(
String
[])
result
.
toArray
(
new
String
[
0
]));
typeAliasesPackage
=
String
.
join
(
","
,
(
String
[])
allResult
.
toArray
(
new
String
[
0
]));
}
else
{
...
...
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