Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
map-parent
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
常超
map-parent
Commits
a705c276
Commit
a705c276
authored
Sep 14, 2021
by
张永田
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mongodb多数据源配置
parent
347ad7be
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
83 additions
and
4 deletions
+83
-4
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/PeopleApiApplication.java
+3
-1
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/AbstractMongoConfig.java
+32
-0
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/PrimaryMongoConfig.java
+18
-0
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/SecondaryMongoConfig.java
+20
-0
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/service/impl/PeopleServiceImpl.java
+10
-3
No files found.
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/PeopleApiApplication.java
View file @
a705c276
...
...
@@ -4,14 +4,16 @@ import org.mybatis.spring.annotation.MapperScan;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.data.mongo.MongoDataAutoConfiguration
;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration
;
import
org.springframework.boot.web.client.RestTemplateBuilder
;
import
org.springframework.cloud.client.discovery.EnableDiscoveryClient
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.ComponentScan
;
import
org.springframework.web.client.RestTemplate
;
@SpringBootApplication
//排除自动配置
@SpringBootApplication
(
exclude
=
{
MongoAutoConfiguration
.
class
,
MongoDataAutoConfiguration
.
class
})
//排除自动配置
@ComponentScan
(
basePackages
=
{
"com.founder"
})
@MapperScan
(
basePackages
={
"com.founder.peopleapi.mapper"
})
@EnableDiscoveryClient
...
...
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/AbstractMongoConfig.java
0 → 100644
View file @
a705c276
package
com
.
founder
.
peopleapi
.
config
;
import
com.mongodb.MongoClientURI
;
import
org.springframework.data.mongodb.MongoDbFactory
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.SimpleMongoDbFactory
;
public
abstract
class
AbstractMongoConfig
{
//连接MongoDB地址
private
String
uri
;
/**
* 获取mongoDBTemplate对象
*/
public
abstract
MongoTemplate
getMongoTemplate
()
throws
Exception
;
/**
* 创建mongoDb工厂
*/
public
MongoDbFactory
mongoDbFactory
()
throws
Exception
{
MongoClientURI
mongoclienturi
=
new
MongoClientURI
(
uri
);
return
new
SimpleMongoDbFactory
(
mongoclienturi
);
}
public
String
getUri
()
{
return
uri
;
}
public
void
setUri
(
String
uri
)
{
this
.
uri
=
uri
;
}
}
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/PrimaryMongoConfig.java
0 → 100644
View file @
a705c276
package
com
.
founder
.
peopleapi
.
config
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
@Configuration
@ConfigurationProperties
(
prefix
=
"spring.data.mongodb.primary"
)
public
class
PrimaryMongoConfig
extends
AbstractMongoConfig
{
@Override
@Primary
@Bean
(
name
=
"primaryMongoTemplate"
)
public
MongoTemplate
getMongoTemplate
()
throws
Exception
{
return
new
MongoTemplate
((
mongoDbFactory
()));
}
}
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/config/SecondaryMongoConfig.java
0 → 100644
View file @
a705c276
package
com
.
founder
.
peopleapi
.
config
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Primary
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
@Configuration
@ConfigurationProperties
(
prefix
=
"spring.data.mongodb.second"
)
public
class
SecondaryMongoConfig
extends
AbstractMongoConfig
{
@Override
@Primary
@Bean
(
name
=
"secondMongoTemplate"
)
public
MongoTemplate
getMongoTemplate
()
throws
Exception
{
return
new
MongoTemplate
((
mongoDbFactory
()));
}
}
\ No newline at end of file
serviceapi/peopleapi/src/main/java/com/founder/peopleapi/service/impl/PeopleServiceImpl.java
View file @
a705c276
...
...
@@ -9,6 +9,7 @@ import com.founder.peopleapi.service.PeopleService;
import
com.sun.org.apache.bcel.internal.generic.NEW
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Qualifier
;
import
org.springframework.data.mongodb.core.MongoTemplate
;
import
org.springframework.data.mongodb.core.query.Criteria
;
import
org.springframework.data.mongodb.core.query.Query
;
...
...
@@ -24,8 +25,14 @@ import java.util.List;
public
class
PeopleServiceImpl
implements
PeopleService
{
@Qualifier
(
"primaryMongoTemplate"
)
@Autowired
MongoTemplate
mongoTemplate
;
MongoTemplate
primaryMongoTemplate
;
@Qualifier
(
"secondMongoTemplate"
)
@Autowired
MongoTemplate
secondMongoTemplate
;
@Autowired
private
RestTemplate
restTemplate
;
...
...
@@ -221,7 +228,7 @@ public class PeopleServiceImpl implements PeopleService {
Query
query
=
new
Query
();
Criteria
criteria
=
Criteria
.
where
(
"veco"
).
is
(
objectValue
);
query
.
addCriteria
(
criteria
);
resCar
=
m
ongoTemplate
.
findOne
(
query
,
Car
.
class
,
"wb0099carowner"
);
resCar
=
primaryM
ongoTemplate
.
findOne
(
query
,
Car
.
class
,
"wb0099carowner"
);
PeopleInfo
peopleInfo
=
new
PeopleInfo
();
peopleInfo
.
setObjectType
(
"03"
);
peopleInfo
.
setObjectValue
(
resCar
.
getCeco
());
...
...
@@ -230,7 +237,7 @@ public class PeopleServiceImpl implements PeopleService {
Query
query
=
new
Query
();
Criteria
criteria
=
Criteria
.
where
(
"imsi"
).
is
(
objectValue
);
query
.
addCriteria
(
criteria
);
Phone
resPhone
=
m
ongoTemplate
.
findOne
(
query
,
Phone
.
class
,
"wb0017mobilereg"
);
Phone
resPhone
=
secondM
ongoTemplate
.
findOne
(
query
,
Phone
.
class
,
"wb0017mobilereg"
);
PeopleInfo
peopleInfo
=
new
PeopleInfo
();
peopleInfo
.
setObjectType
(
"03"
);
peopleInfo
.
setObjectValue
(
resPhone
.
getCecoS
()!=
null
?
resPhone
.
getCecoS
():
resPhone
.
getCeco
());
...
...
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