From b73fedc4026231b31cbc99f9fdad54c8e73a1a34 Mon Sep 17 00:00:00 2001 From: zhaowenxuan <chacca165@163.com> Date: 星期五, 04 七月 2025 17:39:24 +0800 Subject: [PATCH] 2025-0704 --- ltkj-hosp/src/main/java/com/ltkj/db/HospDynamicDataSource.java | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ltkj-hosp/src/main/java/com/ltkj/db/HospDynamicDataSource.java b/ltkj-hosp/src/main/java/com/ltkj/db/HospDynamicDataSource.java index 06267f4..7e1297e 100644 --- a/ltkj-hosp/src/main/java/com/ltkj/db/HospDynamicDataSource.java +++ b/ltkj-hosp/src/main/java/com/ltkj/db/HospDynamicDataSource.java @@ -1,24 +1,30 @@ package com.ltkj.db; +import lombok.extern.slf4j.Slf4j; import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; import javax.sql.DataSource; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +@Slf4j public class HospDynamicDataSource extends AbstractRoutingDataSource { private final Map<Object, Object> targetDataSources = new ConcurrentHashMap<>(); // 瀛樺偍鎵�鏈夋暟鎹簮 @Override protected Object determineCurrentLookupKey() { - return DataSourceContextHolder.getDataSourceKey(); // 鏍规嵁涓婁笅鏂囪幏鍙栧綋鍓嶆暟鎹簮鐨勯敭 + String key = DataSourceContextHolder.getDataSourceKey(); +// log.info("褰撳墠鏁版嵁婧� ->{}",key); + return key; // 鏍规嵁涓婁笅鏂囪幏鍙栧綋鍓嶆暟鎹簮鐨勯敭 } // 娣诲姞鐩爣鏁版嵁婧� public void addTargetDataSource(String key, DataSource dataSource) { - targetDataSources.put(key, dataSource); - super.setTargetDataSources(new ConcurrentHashMap<>(targetDataSources)); // 鏇存柊鐩爣鏁版嵁婧� - super.afterPropertiesSet(); // 閲嶆柊鍒濆鍖栨暟鎹簮 + if (dataSource != null) { + targetDataSources.put(key, dataSource); + super.setTargetDataSources(new ConcurrentHashMap<>(targetDataSources)); // 鏇存柊鐩爣鏁版嵁婧� + super.afterPropertiesSet(); // 閲嶆柊鍒濆鍖栨暟鎹簮 + } } // 鍏佽澶栭儴璁块棶鎵�鏈夌洰鏍囨暟鎹簮 -- Gitblit v1.8.0