package com.thhy.general.config.mysql;
|
|
|
import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
|
public class DynamicDataSource extends AbstractRoutingDataSource {
|
|
private static final ThreadLocal<String> contextHolder = new ThreadLocal<>();
|
|
|
@Override
|
protected Object determineCurrentLookupKey() {
|
return contextHolder.get();
|
}
|
|
public static void setDataSource(String name) {
|
contextHolder.set(name);
|
}
|
|
// 在 finally 中及时 remove
|
public static void clearDataSource() {
|
contextHolder.remove();
|
}
|
}
|