Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
Eladmin
Commits
837f2308
Commit
837f2308
authored
Mar 14, 2022
by
luoqiangzheng@hz-cpp.com
Browse files
升级依赖包
parent
b9aca936
Changes
16
Hide whitespace changes
Inline
Side-by-side
eladmin-common/pom.xml
View file @
837f2308
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
</parent>
</parent>
<modelVersion>
4.0.0
</modelVersion>
<modelVersion>
4.0.0
</modelVersion>
<properties>
<properties>
<hutool.version>
5.
3.4
</hutool.version>
<hutool.version>
5.
7.22
</hutool.version>
</properties>
</properties>
<artifactId>
eladmin-common
</artifactId>
<artifactId>
eladmin-common
</artifactId>
...
...
eladmin-common/src/main/java/me/zhengjie/config/SwaggerConfig.java
View file @
837f2308
...
@@ -15,8 +15,8 @@
...
@@ -15,8 +15,8 @@
*/
*/
package
me.zhengjie.config
;
package
me.zhengjie.config
;
import
cn.hutool.core.collection.CollUtil
;
import
com.fasterxml.classmate.TypeResolver
;
import
com.fasterxml.classmate.TypeResolver
;
import
com.google.common.base.Predicates
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Data
;
...
@@ -29,14 +29,18 @@ import springfox.documentation.builders.ApiInfoBuilder;
...
@@ -29,14 +29,18 @@ import springfox.documentation.builders.ApiInfoBuilder;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.schema.AlternateTypeRule
;
import
springfox.documentation.schema.AlternateTypeRule
;
import
springfox.documentation.schema.AlternateTypeRuleConvention
;
import
springfox.documentation.schema.AlternateTypeRuleConvention
;
import
springfox.documentation.service.*
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.service.ApiKey
;
import
springfox.documentation.service.AuthorizationScope
;
import
springfox.documentation.service.SecurityReference
;
import
springfox.documentation.service.SecurityScheme
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spi.service.contexts.SecurityContext
;
import
springfox.documentation.spi.service.contexts.SecurityContext
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
static
com
.
google
.
common
.
collect
.
Lists
.
newArrayList
;
import
static
springfox
.
documentation
.
schema
.
AlternateTypeRules
.
newRule
;
import
static
springfox
.
documentation
.
schema
.
AlternateTypeRules
.
newRule
;
/**
/**
...
@@ -62,7 +66,7 @@ public class SwaggerConfig {
...
@@ -62,7 +66,7 @@ public class SwaggerConfig {
.
pathMapping
(
"/"
)
.
pathMapping
(
"/"
)
.
apiInfo
(
apiInfo
())
.
apiInfo
(
apiInfo
())
.
select
()
.
select
()
.
paths
(
Predicates
.
not
(
PathSelectors
.
regex
(
"/error.*"
))
)
.
paths
(
PathSelectors
.
regex
(
"
^(?!
/error
)
.*"
))
.
paths
(
PathSelectors
.
any
())
.
paths
(
PathSelectors
.
any
())
.
build
()
.
build
()
//添加登陆认证
//添加登陆认证
...
@@ -98,7 +102,7 @@ public class SwaggerConfig {
...
@@ -98,7 +102,7 @@ public class SwaggerConfig {
private
SecurityContext
getContextByPath
()
{
private
SecurityContext
getContextByPath
()
{
return
SecurityContext
.
builder
()
return
SecurityContext
.
builder
()
.
securityReferences
(
defaultAuth
())
.
securityReferences
(
defaultAuth
())
.
forPaths
(
PathSelectors
.
regex
(
"^(?!/auth).*$"
))
.
operationSelector
(
o
->
o
.
requestMappingPattern
().
matches
(
"^(?!/auth).*$"
))
.
build
();
.
build
();
}
}
...
@@ -128,7 +132,7 @@ class SwaggerDataConfig {
...
@@ -128,7 +132,7 @@ class SwaggerDataConfig {
@Override
@Override
public
List
<
AlternateTypeRule
>
rules
()
{
public
List
<
AlternateTypeRule
>
rules
()
{
return
newArrayList
(
newRule
(
resolver
.
resolve
(
Pageable
.
class
),
resolver
.
resolve
(
Page
.
class
)));
return
CollUtil
.
newArrayList
(
newRule
(
resolver
.
resolve
(
Pageable
.
class
),
resolver
.
resolve
(
Page
.
class
)));
}
}
};
};
}
}
...
...
eladmin-common/src/main/java/me/zhengjie/utils/ValidationUtil.java
View file @
837f2308
...
@@ -15,16 +15,17 @@
...
@@ -15,16 +15,17 @@
*/
*/
package
me.zhengjie.utils
;
package
me.zhengjie.utils
;
import
cn.hutool.core.lang.Validator
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.exception.BadRequestException
;
import
org.hibernate.validator.internal.constraintvalidators.hv.EmailValidator
;
/**
/**
* 验证工具
* 验证工具
*
* @author Zheng Jie
* @author Zheng Jie
* @date 2018-11-23
* @date 2018-11-23
*/
*/
public
class
ValidationUtil
{
public
class
ValidationUtil
{
/**
/**
* 验证空
* 验证空
...
@@ -36,10 +37,10 @@ public class ValidationUtil{
...
@@ -36,10 +37,10 @@ public class ValidationUtil{
}
}
}
}
/**
/**
* 验证是否为邮箱
* 验证是否为邮箱
*/
*/
public
static
boolean
isEmail
(
String
email
)
{
public
static
boolean
isEmail
(
String
email
)
{
return
new
Email
Validator
()
.
is
Valid
(
email
,
nul
l
);
return
Validator
.
is
Email
(
emai
l
);
}
}
}
}
eladmin-common/src/test/java/me/zhengjie/utils/DateUtilsTest.java
View file @
837f2308
package
me.zhengjie.utils
;
package
me.zhengjie.utils
;
import
org.junit.Test
;
import
org.junit.
jupiter.api.
Test
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.Date
;
import
java.util.Date
;
...
...
eladmin-common/src/test/java/me/zhengjie/utils/EncryptUtilsTest.java
View file @
837f2308
package
me.zhengjie.utils
;
package
me.zhengjie.utils
;
import
org.junit.Test
;
import
org.junit.
jupiter.api.
Test
;
import
static
org
.
junit
.
Assert
.*;
import
static
me
.
zhengjie
.
utils
.
EncryptUtils
.*;
import
static
me
.
zhengjie
.
utils
.
EncryptUtils
.*;
import
static
org
.
junit
.
jupiter
.
api
.
Assertions
.
assertEquals
;
public
class
EncryptUtilsTest
{
public
class
EncryptUtilsTest
{
...
...
eladmin-common/src/test/java/me/zhengjie/utils/FileUtilTest.java
View file @
837f2308
package
me.zhengjie.utils
;
package
me.zhengjie.utils
;
import
org.junit.Test
;
import
org.junit.
jupiter.api.
Test
;
import
org.springframework.mock.web.MockMultipartFile
;
import
org.springframework.mock.web.MockMultipartFile
;
import
static
org
.
junit
.
Assert
.*;
import
static
me
.
zhengjie
.
utils
.
FileUtil
.*;
import
static
me
.
zhengjie
.
utils
.
FileUtil
.*;
import
static
org
.
junit
.
jupiter
.
api
.
Assertions
.
assertEquals
;
public
class
FileUtilTest
{
public
class
FileUtilTest
{
...
...
eladmin-common/src/test/java/me/zhengjie/utils/StringUtilsTest.java
View file @
837f2308
package
me.zhengjie.utils
;
package
me.zhengjie.utils
;
import
org.junit.Test
;
import
org.junit.
jupiter.api.
Test
;
import
org.springframework.mock.web.MockHttpServletRequest
;
import
org.springframework.mock.web.MockHttpServletRequest
;
import
java.text.SimpleDateFormat
;
import
java.text.SimpleDateFormat
;
import
java.util.
*
;
import
java.util.
Date
;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.*;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.
getIp
;
import
static
org
.
junit
.
Assert
.*;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.
getWeekDay
;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.
toCamelCase
;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.
toCapitalizeCamelCase
;
import
static
me
.
zhengjie
.
utils
.
StringUtils
.
toUnderScoreCase
;
import
static
org
.
junit
.
jupiter
.
api
.
Assertions
.
assertEquals
;
import
static
org
.
junit
.
jupiter
.
api
.
Assertions
.
assertNull
;
public
class
StringUtilsTest
{
public
class
StringUtilsTest
{
...
@@ -40,4 +45,4 @@ public class StringUtilsTest {
...
@@ -40,4 +45,4 @@ public class StringUtilsTest {
public
void
testGetIP
()
{
public
void
testGetIP
()
{
assertEquals
(
"127.0.0.1"
,
getIp
(
new
MockHttpServletRequest
()));
assertEquals
(
"127.0.0.1"
,
getIp
(
new
MockHttpServletRequest
()));
}
}
}
}
\ No newline at end of file
eladmin-generator/pom.xml
View file @
837f2308
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
<name>
代码生成模块
</name>
<name>
代码生成模块
</name>
<properties>
<properties>
<configuration.version>
1.
9
</configuration.version>
<configuration.version>
1.
10
</configuration.version>
</properties>
</properties>
<dependencies>
<dependencies>
...
...
eladmin-system/pom.xml
View file @
837f2308
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
<name>
核心模块
</name>
<name>
核心模块
</name>
<properties>
<properties>
<jjwt.version>
0.11.
1
</jjwt.version>
<jjwt.version>
0.11.
2
</jjwt.version>
<!-- oshi监控需要指定jna版本, 问题详见 https://github.com/oshi/oshi/issues/1040 -->
<!-- oshi监控需要指定jna版本, 问题详见 https://github.com/oshi/oshi/issues/1040 -->
<jna.version>
5.8.0
</jna.version>
<jna.version>
5.8.0
</jna.version>
</properties>
</properties>
...
@@ -84,7 +84,7 @@
...
@@ -84,7 +84,7 @@
<dependency>
<dependency>
<groupId>
com.github.oshi
</groupId>
<groupId>
com.github.oshi
</groupId>
<artifactId>
oshi-core
</artifactId>
<artifactId>
oshi-core
</artifactId>
<version>
5.7.1
</version>
<version>
6.1.4
</version>
</dependency>
</dependency>
</dependencies>
</dependencies>
...
...
eladmin-system/src/main/java/me/zhengjie/config/ConfigurerAdapter.java
View file @
837f2308
...
@@ -54,7 +54,7 @@ public class ConfigurerAdapter implements WebMvcConfigurer {
...
@@ -54,7 +54,7 @@ public class ConfigurerAdapter implements WebMvcConfigurer {
UrlBasedCorsConfigurationSource
source
=
new
UrlBasedCorsConfigurationSource
();
UrlBasedCorsConfigurationSource
source
=
new
UrlBasedCorsConfigurationSource
();
CorsConfiguration
config
=
new
CorsConfiguration
();
CorsConfiguration
config
=
new
CorsConfiguration
();
config
.
setAllowCredentials
(
true
);
config
.
setAllowCredentials
(
true
);
config
.
addAllowedOrigin
(
"*"
);
config
.
addAllowedOrigin
Pattern
(
"*"
);
config
.
addAllowedHeader
(
"*"
);
config
.
addAllowedHeader
(
"*"
);
config
.
addAllowedMethod
(
"*"
);
config
.
addAllowedMethod
(
"*"
);
source
.
registerCorsConfiguration
(
"/**"
,
config
);
source
.
registerCorsConfiguration
(
"/**"
,
config
);
...
...
eladmin-system/src/main/java/me/zhengjie/modules/system/service/impl/MonitorServiceImpl.java
View file @
837f2308
...
@@ -15,9 +15,8 @@
...
@@ -15,9 +15,8 @@
*/
*/
package
me.zhengjie.modules.system.service.impl
;
package
me.zhengjie.modules.system.service.impl
;
import
cn.hutool.core.date.BetweenFormater
;
import
cn.hutool.core.date.BetweenFormat
t
er
.Level
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
me.zhengjie.exception.BadRequestException
;
import
me.zhengjie.modules.system.service.MonitorService
;
import
me.zhengjie.modules.system.service.MonitorService
;
import
me.zhengjie.utils.ElAdminConstant
;
import
me.zhengjie.utils.ElAdminConstant
;
import
me.zhengjie.utils.FileUtil
;
import
me.zhengjie.utils.FileUtil
;
...
@@ -177,7 +176,7 @@ public class MonitorServiceImpl implements MonitorService {
...
@@ -177,7 +176,7 @@ public class MonitorServiceImpl implements MonitorService {
long
time
=
ManagementFactory
.
getRuntimeMXBean
().
getStartTime
();
long
time
=
ManagementFactory
.
getRuntimeMXBean
().
getStartTime
();
Date
date
=
new
Date
(
time
);
Date
date
=
new
Date
(
time
);
// 计算项目运行时间
// 计算项目运行时间
String
formatBetween
=
DateUtil
.
formatBetween
(
date
,
new
Date
(),
BetweenFormater
.
Level
.
HOUR
);
String
formatBetween
=
DateUtil
.
formatBetween
(
date
,
new
Date
(),
Level
.
HOUR
);
// 系统信息
// 系统信息
systemInfo
.
put
(
"os"
,
os
.
toString
());
systemInfo
.
put
(
"os"
,
os
.
toString
());
systemInfo
.
put
(
"day"
,
formatBetween
);
systemInfo
.
put
(
"day"
,
formatBetween
);
...
...
eladmin-system/src/main/resources/banner.txt
View file @
837f2308
...
@@ -5,4 +5,4 @@
...
@@ -5,4 +5,4 @@
| __| | | (_| | (_| | | | | | | | | | |
| __| | | (_| | (_| | | | | | | | | | |
\___|_| \__,_|\__,_|_| |_| |_|_|_| |_|
\___|_| \__,_|\__,_|_| |_| |_|_|_| |_|
:: Spring Boot :: (v2.1.0.RELEASE)
:: Spring Boot :: (v2.6.4)
\ No newline at end of file
\ No newline at end of file
eladmin-system/src/test/java/me/zhengjie/EladminSystemApplicationTests.java
View file @
837f2308
package
me.zhengjie
;
package
me.zhengjie
;
import
org.junit.Test
;
import
org.junit.jupiter.api.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringRunner
;
@RunWith
(
SpringRunner
.
class
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
public
class
EladminSystemApplicationTests
{
public
class
EladminSystemApplicationTests
{
...
...
eladmin-system/src/test/java/me/zhengjie/LoginCacheTest.java
View file @
837f2308
package
me.zhengjie
;
package
me.zhengjie
;
import
me.zhengjie.modules.security.service.UserDetailsServiceImpl
;
import
me.zhengjie.modules.security.service.UserDetailsServiceImpl
;
import
org.junit.Test
;
import
org.junit.jupiter.api.Test
;
import
org.junit.runner.RunWith
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringRunner
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.concurrent.CountDownLatch
;
import
java.util.concurrent.CountDownLatch
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.ExecutorService
;
import
java.util.concurrent.Executors
;
import
java.util.concurrent.Executors
;
@RunWith
(
SpringRunner
.
class
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
@SpringBootTest
(
webEnvironment
=
SpringBootTest
.
WebEnvironment
.
RANDOM_PORT
)
public
class
LoginCacheTest
{
public
class
LoginCacheTest
{
@Resource
(
name
=
"userDetailsService"
)
@Resource
(
name
=
"userDetailsService"
)
private
UserDetailsServiceImpl
userDetailsService
;
private
UserDetailsServiceImpl
userDetailsService
;
ExecutorService
executor
=
Executors
.
newCachedThreadPool
();
@Test
ExecutorService
executor
=
Executors
.
newCachedThreadPool
();
public
void
testCache
()
throws
InterruptedException
{
long
start1
=
System
.
currentTimeMillis
();
int
size
=
1000
;
CountDownLatch
latch
=
new
CountDownLatch
(
size
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
executor
.
submit
(()
->
userDetailsService
.
loadUserByUsername
(
"admin"
));
latch
.
countDown
();
}
latch
.
await
();
long
end1
=
System
.
currentTimeMillis
();
@Test
//关闭缓存
public
void
testCache
()
throws
InterruptedException
{
userDetailsService
.
setEnableCache
(
false
);
long
start1
=
System
.
currentTimeMillis
();
long
start2
=
System
.
currentTimeMillis
();
int
size
=
1000
;
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
CountDownLatch
latch
=
new
CountDownLatch
(
size
);
userDetailsService
.
loadUserByUsername
(
"admin"
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
}
executor
.
submit
(()
->
userDetailsService
.
loadUserByUsername
(
"admin"
));
long
end2
=
System
.
currentTimeMillis
();
latch
.
countDown
();
System
.
out
.
print
(
"使用缓存:"
+
(
end1
-
start1
)
+
"毫秒\n 不使用缓存:"
+
(
end2
-
start2
)
+
"毫秒"
);
}
}
latch
.
await
();
@Test
public
void
testCacheManager
()
throws
InterruptedException
{
long
end1
=
System
.
currentTimeMillis
();
int
size
=
1000
;
// 关闭缓存
CountDownLatch
latch
=
new
CountDownLatch
(
size
);
userDetailsService
.
setEnableCache
(
false
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
long
start2
=
System
.
currentTimeMillis
();
int
mod
=
i
%
10
;
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
executor
.
submit
(()
->
{
userDetailsService
.
loadUserByUsername
(
"admin"
);
try
{
Thread
.
sleep
(
mod
*
2
+
(
int
)
(
Math
.
random
()
*
10000
));
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
userDetailsService
.
loadUserByUsername
(
"admin"
+
mod
);
latch
.
countDown
();
System
.
out
.
println
(
"剩余未完成数量"
+
latch
.
getCount
());
});
}
latch
.
await
();
}
}
long
end2
=
System
.
currentTimeMillis
();
System
.
out
.
print
(
"使用缓存:"
+
(
end1
-
start1
)
+
"毫秒\n 不使用缓存:"
+
(
end2
-
start2
)
+
"毫秒"
);
}
@Test
public
void
testCacheManager
()
throws
InterruptedException
{
int
size
=
1000
;
CountDownLatch
latch
=
new
CountDownLatch
(
size
);
for
(
int
i
=
0
;
i
<
size
;
i
++)
{
int
mod
=
i
%
10
;
executor
.
submit
(
()
->
{
try
{
Thread
.
sleep
(
mod
*
2
+
(
int
)
(
Math
.
random
()
*
10000
));
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
userDetailsService
.
loadUserByUsername
(
"admin"
+
mod
);
latch
.
countDown
();
System
.
out
.
println
(
"剩余未完成数量"
+
latch
.
getCount
());
});
}
latch
.
await
();
}
}
}
eladmin-tools/pom.xml
View file @
837f2308
...
@@ -14,8 +14,8 @@
...
@@ -14,8 +14,8 @@
<properties>
<properties>
<mail.version>
1.4.7
</mail.version>
<mail.version>
1.4.7
</mail.version>
<qiniu.version>
[
7.
2.0, 7.2.99]
</qiniu.version>
<qiniu.version>
7.
9.3
</qiniu.version>
<alipay.version>
4.
9.153
.ALL
</alipay.version>
<alipay.version>
4.
22.57
.ALL
</alipay.version>
</properties>
</properties>
<dependencies>
<dependencies>
...
@@ -47,4 +47,4 @@
...
@@ -47,4 +47,4 @@
<version>
${alipay.version}
</version>
<version>
${alipay.version}
</version>
</dependency>
</dependency>
</dependencies>
</dependencies>
</project>
</project>
\ No newline at end of file
pom.xml
View file @
837f2308
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
<parent>
<parent>
<groupId>
org.springframework.boot
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<artifactId>
spring-boot-starter-parent
</artifactId>
<version>
2.
2.10.RELEASE
</version>
<version>
2.
6.4
</version>
</parent>
</parent>
<properties>
<properties>
...
@@ -34,10 +34,10 @@
...
@@ -34,10 +34,10 @@
<java.version>
1.8
</java.version>
<java.version>
1.8
</java.version>
<log4jdbc.version>
1.16
</log4jdbc.version>
<log4jdbc.version>
1.16
</log4jdbc.version>
<swagger.version>
2.9.2
</swagger.version>
<swagger.version>
2.9.2
</swagger.version>
<fastjson.version>
1.2.7
0
</fastjson.version>
<fastjson.version>
1.2.7
9
</fastjson.version>
<druid.version>
1.
1.24
</druid.version>
<druid.version>
1.
2.8
</druid.version>
<commons-pool2.version>
2.
5.0
</commons-pool2.version>
<commons-pool2.version>
2.
11.1
</commons-pool2.version>
<mapstruct.version>
1.
3.1
.Final
</mapstruct.version>
<mapstruct.version>
1.
4.2
.Final
</mapstruct.version>
</properties>
</properties>
<dependencies>
<dependencies>
...
@@ -80,6 +80,7 @@
...
@@ -80,6 +80,7 @@
</dependency>
</dependency>
<!--spring boot 集成redis所需common-pool2-->
<!--spring boot 集成redis所需common-pool2-->
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-pool2 -->
<dependency>
<dependency>
<groupId>
org.apache.commons
</groupId>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-pool2
</artifactId>
<artifactId>
commons-pool2
</artifactId>
...
@@ -98,37 +99,14 @@
...
@@ -98,37 +99,14 @@
</dependency>
</dependency>
<!-- Swagger UI 相关 -->
<!-- Swagger UI 相关 -->
<!-- https://mvnrepository.com/artifact/com.github.xiaoymin/knife4j-spring-boot-starter -->
<dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<groupId>
com.github.xiaoymin
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<artifactId>
knife4j-spring-boot-starter
</artifactId>
<version>
${swagger.version}
</version>
<version>
3.0.3
</version>
<exclusions>
<exclusion>
<groupId>
io.swagger
</groupId>
<artifactId>
swagger-annotations
</artifactId>
</exclusion>
<exclusion>
<groupId>
io.swagger
</groupId>
<artifactId>
swagger-models
</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<version>
${swagger.version}
</version>
</dependency>
<dependency>
<groupId>
io.swagger
</groupId>
<artifactId>
swagger-annotations
</artifactId>
<version>
1.5.21
</version>
</dependency>
<dependency>
<groupId>
io.swagger
</groupId>
<artifactId>
swagger-models
</artifactId>
<version>
1.5.21
</version>
</dependency>
</dependency>
<!--Mysql依赖包-->
<!--Mysql依赖包-->
<dependency>
<dependency>
<groupId>
mysql
</groupId>
<groupId>
mysql
</groupId>
...
@@ -144,13 +122,13 @@
...
@@ -144,13 +122,13 @@
</dependency>
</dependency>
<!-- ip2region IP库 -->
<!-- ip2region IP库 -->
<!-- https://mvnrepository.com/artifact/net.dreamlu/mica-ip2region -->
<dependency>
<dependency>
<groupId>
net.dreamlu
</groupId>
<groupId>
net.dreamlu
</groupId>
<artifactId>
mica-ip2region
</artifactId>
<artifactId>
mica-ip2region
</artifactId>
<version>
2.
5.6
</version>
<version>
2.
6.3
</version>
</dependency>
</dependency>
<!--lombok插件-->
<!--lombok插件-->
<dependency>
<dependency>
<groupId>
org.projectlombok
</groupId>
<groupId>
org.projectlombok
</groupId>
...
@@ -162,12 +140,12 @@
...
@@ -162,12 +140,12 @@
<dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi
</artifactId>
<artifactId>
poi
</artifactId>
<version>
3.17
</version>
<version>
5.2.0
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi-ooxml
</artifactId>
<artifactId>
poi-ooxml
</artifactId>
<version>
3.17
</version>
<version>
5.2.0
</version>
</dependency>
</dependency>
<dependency>
<dependency>
<groupId>
xerces
</groupId>
<groupId>
xerces
</groupId>
...
@@ -211,7 +189,7 @@
...
@@ -211,7 +189,7 @@
<dependency>
<dependency>
<groupId>
nl.basjes.parse.useragent
</groupId>
<groupId>
nl.basjes.parse.useragent
</groupId>
<artifactId>
yauaa
</artifactId>
<artifactId>
yauaa
</artifactId>
<version>
5.23
</version>
<version>
6.11
</version>
</dependency>
</dependency>
</dependencies>
</dependencies>
...
...
Write
Preview
Supports
Markdown
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