- 代码敬上
package org.jeecg.modules.datasource; import com.alibaba.druid.pool.DruidDataSource; import io.seata.rm.datasource.DataSourceProxy; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; import org.springframework.core.env.Environment; import javax.sql.DataSource; @Configuration public class DataSourceConfig { @Autowired private Environment env; @Bean public DataSource getDataSource() { DruidDataSource dataSource = new DruidDataSource(); dataSource.setUrl(env.getProperty("spring.datasource.dynamic.datasource.mitu-cloud-finance.url")); dataSource.setUsername(env.getProperty("spring.datasource.dynamic.datasource.mitu-cloud-finance.username")); dataSource.setPassword(env.getProperty("spring.datasource.dynamic.datasource.mitu-cloud-finance.password")); dataSource.setDriverClassName(env.getProperty("spring.datasource.dynamic.datasource.mitu-cloud-finance.driver-class-name")); //这上面是获取配置文件中的信息,url,username,password,driverclassname等 return dataSource; } @Primary @Bean("dataSource") public DataSourceProxy dataSource(DataSource druidDataSource) { return new DataSourceProxy(druidDataSource); } }
- 在启动类上添加上以下注解
@Import(DataSourceConfig.class) //DataSourceConfig是上面配置文件的
- 同时在@SpringBootApplication注解上排除自动加载数据源
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
- 启动类上的注解图