Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
matrix
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
CI / CD
CI / CD
Pipelines
Schedules
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
mall
arch
matrix
Commits
ffed9f21
Commit
ffed9f21
authored
Dec 17, 2019
by
qiuweili123
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature_protocol' of
http://gitlab.secoo.com:8090/mall/arch/matrix
parents
aa2e1889
c3af0325
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
36 additions
and
10 deletions
+36
-10
DataSourceConstant.java
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/constant/DataSourceConstant.java
+4
-0
AbsDataSourceProvider.java
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/AbsDataSourceProvider.java
+9
-1
ApolloDataSourceProvider.java
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/ApolloDataSourceProvider.java
+8
-4
DefaultDataSourceProvider.java
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/DefaultDataSourceProvider.java
+5
-0
MatrixMybatisAutoConfiguration.java
matrix-mybatis/matrix-mybatis-starter/src/main/java/com/secoo/mall/mybatis/spring/boot/autoconfigure/MatrixMybatisAutoConfiguration.java
+0
-5
WebConfig.java
protocol-starter/src/main/java/com/secoo/mall/web/config/WebConfig.java
+10
-0
No files found.
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/constant/DataSourceConstant.java
View file @
ffed9f21
...
@@ -20,6 +20,10 @@ public interface DataSourceConstant {
...
@@ -20,6 +20,10 @@ public interface DataSourceConstant {
*/
*/
String
DB_NAMESPACE
=
"arch.db_config"
;
String
DB_NAMESPACE
=
"arch.db_config"
;
/**
/**
* 阿波罗应用配置命名空间
*/
String
APP_NAMESPACE
=
"application"
;
/**
* 属性配置分割符
* 属性配置分割符
*/
*/
String
PROPETY_SPLIT_CHAR
=
"\\."
;
String
PROPETY_SPLIT_CHAR
=
"\\."
;
...
...
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/AbsDataSourceProvider.java
View file @
ffed9f21
...
@@ -16,14 +16,17 @@ import java.util.Map;
...
@@ -16,14 +16,17 @@ import java.util.Map;
public
abstract
class
AbsDataSourceProvider
<
T
extends
MatrixDataSourceConfig
>
implements
DataSourceProvider
{
public
abstract
class
AbsDataSourceProvider
<
T
extends
MatrixDataSourceConfig
>
implements
DataSourceProvider
{
private
Encryptor
<
String
>
encryptor
=
EncryptorFactory
.
getInstance
().
getEncryptor
();
private
Encryptor
<
String
>
encryptor
;
@Resource
@Resource
private
DataSourceFactory
dataSourceFactory
;
private
DataSourceFactory
dataSourceFactory
;
private
Class
<
T
>
entryClass
;
private
Class
<
T
>
entryClass
;
public
AbsDataSourceProvider
()
{
public
AbsDataSourceProvider
()
{
initEnvProperties
();
entryClass
=
(
Class
<
T
>)
((
ParameterizedType
)
getClass
().
getGenericSuperclass
()).
getActualTypeArguments
()[
0
];
entryClass
=
(
Class
<
T
>)
((
ParameterizedType
)
getClass
().
getGenericSuperclass
()).
getActualTypeArguments
()[
0
];
encryptor
=
EncryptorFactory
.
getInstance
().
getEncryptor
();
}
}
...
@@ -57,5 +60,10 @@ public abstract class AbsDataSourceProvider<T extends MatrixDataSourceConfig> im
...
@@ -57,5 +60,10 @@ public abstract class AbsDataSourceProvider<T extends MatrixDataSourceConfig> im
protected
abstract
List
<
T
>
getDataSourceProperties
();
protected
abstract
List
<
T
>
getDataSourceProperties
();
/**
* 配置accessToken等信息
*/
protected
abstract
void
initEnvProperties
();
}
}
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/ApolloDataSourceProvider.java
View file @
ffed9f21
...
@@ -10,6 +10,7 @@ import com.secoo.mall.datasource.config.MatrixDataSourceConfig;
...
@@ -10,6 +10,7 @@ import com.secoo.mall.datasource.config.MatrixDataSourceConfig;
import
com.secoo.mall.datasource.constant.DataSourceConstant
;
import
com.secoo.mall.datasource.constant.DataSourceConstant
;
import
com.secoo.mall.datasource.errorcode.DataSourceError
;
import
com.secoo.mall.datasource.errorcode.DataSourceError
;
import
com.secoo.mall.datasource.properties.MatrixDataSourceProperties
;
import
com.secoo.mall.datasource.properties.MatrixDataSourceProperties
;
import
com.secoo.mall.datasource.util.SysUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.reflect.MethodUtils
;
import
org.apache.commons.lang3.reflect.MethodUtils
;
...
@@ -25,10 +26,6 @@ import java.util.stream.Collectors;
...
@@ -25,10 +26,6 @@ import java.util.stream.Collectors;
*/
*/
@Slf4j
@Slf4j
public
class
ApolloDataSourceProvider
<
T
extends
MatrixDataSourceConfig
>
extends
AbsDataSourceProvider
<
T
>
{
public
class
ApolloDataSourceProvider
<
T
extends
MatrixDataSourceConfig
>
extends
AbsDataSourceProvider
<
T
>
{
/*
*/
/**
/**
* 从appollo加载配置信息
* 从appollo加载配置信息
*
*
...
@@ -73,4 +70,11 @@ public class ApolloDataSourceProvider<T extends MatrixDataSourceConfig> extends
...
@@ -73,4 +70,11 @@ public class ApolloDataSourceProvider<T extends MatrixDataSourceConfig> extends
return
list
;
return
list
;
}
}
@Override
protected
void
initEnvProperties
()
{
Config
appConfig
=
ConfigService
.
getConfig
(
DataSourceConstant
.
APP_NAMESPACE
);
String
acccessToken
=
appConfig
.
getProperty
(
"config.app.security.accessToken"
,
"default"
);
SysUtil
.
setProperty
(
"accessToken"
,
acccessToken
);
}
}
}
matrix-datasource/matrix-datasource-core/src/main/java/com/secoo/mall/datasource/provider/DefaultDataSourceProvider.java
View file @
ffed9f21
...
@@ -21,4 +21,9 @@ public class DefaultDataSourceProvider extends AbsDataSourceProvider<MatrixDataS
...
@@ -21,4 +21,9 @@ public class DefaultDataSourceProvider extends AbsDataSourceProvider<MatrixDataS
return
this
.
dataSourceConfigs
;
return
this
.
dataSourceConfigs
;
}
}
@Override
protected
void
initEnvProperties
()
{
}
}
}
matrix-mybatis/matrix-mybatis-starter/src/main/java/com/secoo/mall/mybatis/spring/boot/autoconfigure/MatrixMybatisAutoConfiguration.java
View file @
ffed9f21
...
@@ -50,14 +50,9 @@ public class MatrixMybatisAutoConfiguration {
...
@@ -50,14 +50,9 @@ public class MatrixMybatisAutoConfiguration {
log
.
info
(
"Init MatrixDataSouceAutoConfiguration"
);
log
.
info
(
"Init MatrixDataSouceAutoConfiguration"
);
}
}
@Value
(
"${config.app.security.accessToken:jp32mbwQkxrygEAjNRsi}"
)
private
String
acccessToken
;
@Bean
@Bean
@ConditionalOnMissingBean
(
DataSourceProvider
.
class
)
@ConditionalOnMissingBean
(
DataSourceProvider
.
class
)
public
DataSourceProvider
dataSourceProvider
()
{
public
DataSourceProvider
dataSourceProvider
()
{
SysUtil
.
setProperty
(
"accessToken"
,
acccessToken
);
return
new
ApolloDruidDataSourceProvider
();
return
new
ApolloDruidDataSourceProvider
();
}
}
...
...
protocol-starter/src/main/java/com/secoo/mall/web/config/WebConfig.java
View file @
ffed9f21
package
com
.
secoo
.
mall
.
web
.
config
;
package
com
.
secoo
.
mall
.
web
.
config
;
import
com.alibaba.fastjson.serializer.SerializeConfig
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.alibaba.fastjson.serializer.SerializerFeature
;
import
com.alibaba.fastjson.serializer.ToStringSerializer
;
import
com.alibaba.fastjson.support.config.FastJsonConfig
;
import
com.alibaba.fastjson.support.config.FastJsonConfig
;
import
com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter
;
import
com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter
;
import
org.springframework.boot.autoconfigure.http.HttpMessageConverters
;
import
org.springframework.boot.autoconfigure.http.HttpMessageConverters
;
...
@@ -9,6 +11,7 @@ import org.springframework.context.annotation.Configuration;
...
@@ -9,6 +11,7 @@ import org.springframework.context.annotation.Configuration;
import
org.springframework.http.MediaType
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
org.springframework.http.converter.HttpMessageConverter
;
import
java.math.BigInteger
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
...
@@ -21,6 +24,13 @@ public class WebConfig {
...
@@ -21,6 +24,13 @@ public class WebConfig {
FastJsonHttpMessageConverter
fastJsonHttpMessageConverter
=
new
FastJsonHttpMessageConverter
();
FastJsonHttpMessageConverter
fastJsonHttpMessageConverter
=
new
FastJsonHttpMessageConverter
();
FastJsonConfig
fastJsonConfig
=
new
FastJsonConfig
();
FastJsonConfig
fastJsonConfig
=
new
FastJsonConfig
();
fastJsonConfig
.
setSerializerFeatures
(
SerializerFeature
.
WriteMapNullValue
);
fastJsonConfig
.
setSerializerFeatures
(
SerializerFeature
.
WriteMapNullValue
);
//解决Long转json精度丢失的问题
SerializeConfig
serializeConfig
=
SerializeConfig
.
globalInstance
;
serializeConfig
.
put
(
BigInteger
.
class
,
ToStringSerializer
.
instance
);
serializeConfig
.
put
(
Long
.
class
,
ToStringSerializer
.
instance
);
serializeConfig
.
put
(
Long
.
TYPE
,
ToStringSerializer
.
instance
);
fastJsonConfig
.
setSerializeConfig
(
serializeConfig
);
//处理中文乱码问题
List
<
MediaType
>
fastMediaTypes
=
new
ArrayList
<>();
List
<
MediaType
>
fastMediaTypes
=
new
ArrayList
<>();
fastMediaTypes
.
add
(
MediaType
.
APPLICATION_JSON_UTF8
);
fastMediaTypes
.
add
(
MediaType
.
APPLICATION_JSON_UTF8
);
fastJsonHttpMessageConverter
.
setSupportedMediaTypes
(
fastMediaTypes
);
fastJsonHttpMessageConverter
.
setSupportedMediaTypes
(
fastMediaTypes
);
...
...
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