我正在使用 spring/hibernate。我在 applicationContext.xml 文件中配置了 5 个数据源。所有数据源都是 com.mchange.v2.c3p0.ComboPooledDataSource 类型,但 id 不同。当我有应用程序上下文时,如何获取所有配置的数据源。我得到的应用程序上下文如下:
WebApplicationContext context = WebApplicationContextUtils.getRequiredWebApplicationContext(getServletContext());
谢谢!
最佳答案
您可以按如下方式获取给定类型的所有 bean:
Map<String, DataSource> dataSources = context.getBeansOfType(DataSource.class);
此Map
中的值是bean实例,键是它们的id。
或者,您可以将给定类型的 Bean 集合作为依赖项注入(inject)到另一个 Bean 中,请参阅 3.9.2 @Autowired and @Inject .
关于java - 获取 applicationContext.xml 文件中配置的所有数据源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10411674/