【问题标题】:How to retrieve DB connection using DataSource without JNDI?如何在没有 JNDI 的情况下使用 DataSource 检索数据库连接?
【发布时间】:2013-03-12 00:50:22
【问题描述】:

我们想要我们自己的db连接配置而不是使用JNDI,但同时我们也想使用DataSource而不是使用DriverManager,怎么做呢?

【问题讨论】:

标签: java jdbc jndi


【解决方案1】:

您使用连接池库,例如 c3p0commons dbcp

C3P0

ComboPooledDataSource cpds = new ComboPooledDataSource();
cpds.setDriverClass( "org.postgresql.Driver" ); //loads the jdbc driver            
cpds.setJdbcUrl( "jdbc:postgresql://localhost/testdb" );
cpds.setUser("dbuser");                                  
cpds.setPassword("dbpassword");

Connection connection = cpds.getConnection();

DBCP

BasicDataSource ds= new BasicDataSource();
ds.setDriverClassName("org.postgresql.Driver");
ds.setUrl("jdbc:postgresql://localhost/testdb");
ds.setUsername("dbuser");
ds.setPassword("dbpassword");

Connection connection = ds.getConnection();

【讨论】:

    【解决方案2】:

    您可以使用org.apache.commons.dbcp.BasicDataSource

    BasicDataSource ds= new BasicDataSource();
    ds.setDriverClassName("oracle.jdbc.driver.OracleDriver");
    ds.setUrl("jdbc:oracle:thin:@dburl:port:sid");
    ds.setUsername("uname");
    ds.setPassword("pass");
    

    【讨论】:

      猜你喜欢
      • 2018-11-06
      • 2012-07-11
      • 2011-03-12
      • 2011-12-13
      • 2012-03-21
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 2016-01-21
      相关资源
      最近更新 更多