我想使用DataSource接口连接到Oracle数据库,不使用java中的DriverManager。 我对此并不了解。请给我一个示例程序。
答案 0 :(得分:2)
首先创建一个Datasource
文件。数据源文件名可以在properties file
中给出。请使用以下代码
ResourceBundle rb = ResourceBundle .getBundle("com.cactus.xorail.properties.ConnectionProperties"); InitialContext ic = new InitialContext(); DataSource ds = (DataSource) ic.lookup("java:/" + rb.getString("Datasource")); if (ds == null) { throw new SQLException( "Please configure datasource with name DS"); }
result = ds.getConnection();
result = ds.getConnection();
答案 1 :(得分:2)
如果您想使用DataSource,可以采用以下方式:
// Setup the datasource
DataSource ds = new OracleDataSource();// There is other DataSource offered by Oracle , check the javadoc for more information
ds.setDriverType("thin");
ds.setServerName("myServer");
ds.setPortNumber(1521);
ds.setDatabaseName("myDB");
ds.setUser("SCOTT");
ds.setPassword("TIGER");
// Get a JDBC connection
Connection c = ds.getConnection();
这是在封面下所做的事情。
然而,在现实生活中,你不会经常这样做。假设您构建了一个Web应用程序。通常,您将以文本格式配置数据源并将此配置放在容器上。之后,您可以通过JNDI检索数据源(请参阅@Radhamani Muthusamy answer)。
答案 2 :(得分:0)
//设置DataSource对象
oracle.jdbc.pool.OracleDataSource ds
= new oracle.jdbc.pool.OracleDataSource();
ds.setDriverType("thin");
ds.setServerName("localhost");
ds.setPortNumber(1521);
ds.setDatabaseName("XE"); // Oracle SID
ds.setUser("Herong");
ds.setPassword("TopSecret");
//获取连接对象
con = ds.getConnection();