【问题标题】:How to verify that data source is valid and configured properly?如何验证数据源是否有效且配置正确?
【发布时间】:2016-12-12 17:01:15
【问题描述】:

在应用程序启动时,我正在加载数据源,如下代码所示 -

@Bean(name = "dataSource")
public DataSource getDataSource() {
    ComboPooledDataSource dataSource = new ComboPooledDataSource ();
    dataSource.setDriverClassName("com.mysql.jdbc.Driver");
    dataSource.setUrl("jdbc:mysql://localhost:3306/usersdb");
    dataSource.setUsername("root");
    dataSource.setPassword("secret");
    return dataSource;
}

所以这里我想验证一下数据源是否加载正确, 一种可能的方法是 datasource.getConnection() 在返回之前,但在这里我必须创建不必要的连接对象,这会带来一些高成本。

请帮助我找到一种方法来验证数据源是否已正确实例化。我听说过一些关于验证查询的信息,但不确定它是如何工作的。请建议。

【问题讨论】:

    标签: spring hibernate datasource


    【解决方案1】:

    没有测试连接就无法验证DataSource

    首先,默认情况下,您定义具有单例范围的 bean,因此将使用单次检查创建单个 DataSource

    其次,不用担心Connection的创建成本,因为你使用的是PooledDataSource'Pooled' 表示存在连接池,这就是为什么物理连接一旦创建就可以被应用程序多次使用。

    验证查询(或测试查询)用于检查现有Connection 是否损坏。详情请见Configuring Connection Testing

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-11
      • 2018-11-21
      • 1970-01-01
      • 2012-07-06
      • 2017-04-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多