Commit 2600160c by 袁伟铭

添加多数据源

parent df582aef
......@@ -60,6 +60,11 @@
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>${mybatis.plus.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>dynamic-datasource-spring-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>
<!-- druid数据源驱动 -->
<dependency>
<groupId>com.alibaba</groupId>
......
package com.zq.portal.config;
public class DBName {
public final static String GXBZ = "gxbz";
public final static String GXCJ = "gxcj";
public final static String GXDB = "gxdb";
public final static String GXHY = "gxhy";
public final static String GXSHZZ = "gxshzz";
}
......@@ -76,6 +76,7 @@ public class SpringSecurityConfig extends WebSecurityConfigurerAdapter {
Map<String, Set<String>> anonymousUrls = getAnonymousUrl(handlerMethodMap);
Set<String> apiSet = new HashSet<>();
//不使用注解的时候在这添加url放行
apiSet.add("/portal/app/**");
// apiSet.add("/static/map/**");
anonymousUrls.put("API", apiSet);
......
package com.zq.portal.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.zq.portal.config.DBName;
import com.zq.portal.vo.YearStatsVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@DS(DBName.GXBZ)
@Repository
public interface BzStatsDao {
......
package com.zq.portal.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.zq.portal.config.DBName;
import com.zq.portal.vo.YearStatsVo;
import org.springframework.stereotype.Repository;
import java.util.List;
@DS(DBName.GXDB)
@Repository
public interface DbStatsDao {
......
package com.zq.portal.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.zq.portal.config.DBName;
import com.zq.portal.vo.YearStatsVo;
import org.springframework.stereotype.Repository;
import java.util.List;
@DS(DBName.GXHY)
@Repository
public interface HyStatsDao {
......
package com.zq.portal.dao;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.zq.portal.config.DBName;
import com.zq.portal.vo.YearStatsVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@DS(DBName.GXSHZZ)
@Repository
public interface ShzzStatsDao {
......
......@@ -29,10 +29,10 @@ public class StatsService {
private final PortalCacheManager portalCacheManager;
public Object getMapStatsData(AreaVo vo) {
Object obj = portalCacheManager.getObj(CacheKeys.getMapDataKey(vo.getPId()));
if (obj != null) {
return obj;
}
// Object obj = portalCacheManager.getObj(CacheKeys.getMapDataKey(vo.getPId()));
// if (obj != null) {
// return obj;
// }
List<Map<String, Object>> returnData = new ArrayList<>();
//获取子区域
......@@ -40,6 +40,7 @@ public class StatsService {
AssertUtils.isTrue(kid != null && kid.size() > 0, "该地区没有数据");
for (SystemArea systemArea : kid) {
// 区域数据
Map<String, Object> areaData = new HashMap<>();
String areaCode = systemArea.subAreaCode();
// 每年死亡人数
......@@ -51,6 +52,8 @@ public class StatsService {
areaData.put("deathsPerYear", deathsPerYear);
areaData.put("marryPerYear", marryPerYear);
areaData.put("soorganPerYear", soorganPerYear);
areaData.put("areaName", systemArea.getName());
areaData.put("areaCode", systemArea.getCode());
returnData.add(areaData);
}
......
......@@ -9,6 +9,4 @@ public class YearStatsVo {
private Integer num;
private String areaCode;
}
......@@ -21,52 +21,112 @@ spring:
database: 0
host: ${redis.url}
port: ${redis.port}
# password: ${redis.password}
# password: ${redis.password}
#连接超时时间
timeout: 5000
datasource:
druid:
db-type: com.alibaba.druid.pool.DruidDataSource
driverClassName: ${jdbc.driver-class-name}
username: ${jdbc.username}
password: ${jdbc.password}
url: ${jdbc.url}
# 初始连接数
initial-size: 5
# 最小连接数
min-idle: 10
# 最大连接数
max-active: 20
# 获取连接超时时间
max-wait: 5000
# 连接有效性检测时间
time-between-eviction-runs-millis: 60000
# 连接在池中最小生存的时间
min-evictable-idle-time-millis: 300000
# 连接在池中最大生存的时间
max-evictable-idle-time-millis: 900000
test-while-idle: true
test-on-borrow: false
test-on-return: false
# 检测连接是否有效
validation-query: select 1
# 配置监控统计
webStatFilter:
enabled: true
stat-view-servlet:
enabled: true
url-pattern: /druid/*
reset-enable: false
filter:
stat:
enabled: true
# 记录慢SQL
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-allow: true
dynamic: # mybatis plus多数据源插件
primary: master #设置默认的数据源或者数据源组,默认值即为master
strict: false #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
druid:
# 初始连接数
initial-size: 5
# 最小连接数
min-idle: 10
# 最大连接数
max-active: 20
# 获取连接超时时间
max-wait: 5000
# 连接有效性检测时间
time-between-eviction-runs-millis: 60000
# 连接在池中最小生存的时间
min-evictable-idle-time-millis: 300000
# 连接在池中最大生存的时间
max-evictable-idle-time-millis: 900000
test-while-idle: true
test-on-borrow: false
test-on-return: false
# 检测连接是否有效
validation-query: select 1
datasource:
master:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/mz_big_data?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
gxbz:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/gx-bz?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
gxcj:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/gx-cj?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
gxdb:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/gx-db?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
gxhy:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/gx-hy?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
gxshzz:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://192.168.0.193:3306/gx-shzz?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: rooT123!321
driver-class-name: com.mysql.cj.jdbc.Driver
# druid:
# db-type: com.alibaba.druid.pool.DruidDataSource
# driverClassName: ${jdbc.driver-class-name}
# username: ${jdbc.username}
# password: ${jdbc.password}
# url: ${jdbc.url}
# # 初始连接数
# initial-size: 5
# # 最小连接数
# min-idle: 10
# # 最大连接数
# max-active: 20
# # 获取连接超时时间
# max-wait: 5000
# # 连接有效性检测时间
# time-between-eviction-runs-millis: 60000
# # 连接在池中最小生存的时间
# min-evictable-idle-time-millis: 300000
# # 连接在池中最大生存的时间
# max-evictable-idle-time-millis: 900000
# test-while-idle: true
# test-on-borrow: false
# test-on-return: false
# # 检测连接是否有效
# validation-query: select 1
# # 配置监控统计
# webStatFilter:
# enabled: true
# stat-view-servlet:
# enabled: true
# url-pattern: /druid/*
# reset-enable: false
# filter:
# stat:
# enabled: true
# # 记录慢SQL
# log-slow-sql: true
# slow-sql-millis: 1000
# merge-sql: true
# wall:
# config:
# multi-statement-allow: true
# mybatis plus 配置
mybatis-plus:
global-config:
......
......@@ -50,7 +50,7 @@
</select>
<select id="findKid" parameterType="java.lang.String" resultType="com.zq.common.entity.SystemArea">
SELECT id as id, type ,parent_id as parentId,name FROM system_area a where a.parent_id=#{value}
SELECT id as id, code, type ,parent_id as parentId,name FROM system_area a where a.parent_id=#{value}
</select>
<select id="getYear" resultType="com.zq.common.entity.SystemYear">
......
......@@ -6,7 +6,7 @@
SELECT
COUNT(1) 'num', LEFT(i.DEATH_DATE,4) 'year'
FROM
`gx-bz`.fis_scatter_dead_info i
fis_scatter_dead_info i
WHERE i.ID_CARD LIKE CONCAT(#{areaCode}, '%')
GROUP BY
LEFT(i.DEATH_DATE,4)
......
......@@ -6,7 +6,7 @@
SELECT
COUNT(1) 'num', DATE_FORMAT(m.AIAX0048,"%Y") 'year'
FROM
`gx-hy`.mrcase m
mrcase m
WHERE (m.AIAP0013 LIKE CONCAT(#{areaCode},'%') OR m.AIAP0014 LIKE CONCAT(#{areaCode},'%'))
GROUP BY
DATE_FORMAT(m.AIAX0048,"%Y")
......
......@@ -6,7 +6,7 @@
SELECT
COUNT(1) 'num', DATE_FORMAT(s.issueTime,"%Y") 'year'
FROM
`gx-shzz`.soorgan s
soorgan s
WHERE s.adminCodeId LIKE CONCAT('45','%')
GROUP BY
DATE_FORMAT(s.issueTime,"%Y")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment