com.afflatus.edu.thoth.entity $ {hibernate.dialect} $ {hibernate.show_sql} $ {hibernate.dbm2ddl}БАЗА ДАННЫХ
это текущий код идентификатора арендатора, здесь я получаю значение из контекста пружины в качестве арендатора
package com.domain.multitenancy;
import javax.sql.DataSource;
import
org.hibernate.engine.jdbc.connections.spi.AbstractDataSourceBasedMultiTenantConnectionProviderImpl;
import com.domain.master.MasterService;
public class MultiTenantConnectionprovideImpl extends
AbstractDataSourceBasedMultiTenantConnectionProviderImpl {
@Override
protected DataSource selectAnyDataSource() {
return MasterService.getDataSourceHashMap().get("tenantId1");
}
@Override
protected DataSource selectDataSource(String tenantIdentifier) {
return MasterService.getDataSourceHashMap().get(tenantIdentifier);
}
}
этоосновная база данных источника
package com.domain.master;
import org.springframework.jdbc.datasource.DriverManagerDataSource;
import javax.sql.DataSource;
import java.util.HashMap;
public class MasterService {
public static HashMap<String, DataSource> getDataSourceHashMap() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/multiten");
dataSource.setUsername("root");
dataSource.setPassword("root");
DriverManagerDataSource dataSource1 = new DriverManagerDataSource();
dataSource1.setDriverClassName("com.mysql.jdbc.Driver");
dataSource1.setUrl("jdbc:mysql://localhost:3306/multiten_1");
dataSource1.setUsername("root");
dataSource1.setPassword("root");
HashMap<String, DataSource> hashMap = new HashMap<String, DataSource>();
hashMap.put("tenantId1", dataSource);
hashMap.put("kartiktamta@gmail.com", dataSource1);
return hashMap;
}
}