gpt4 book ai didi

java - 在java中使用blueprint中定义的数据源访问oracle db

转载 作者:行者123 更新时间:2023-12-01 11:36:25 26 4
gpt4 key购买 nike

下面是我的数据源

<bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource" destroy-method="close">
<property name="URL" value="jdbc:oracle:thin:@${host}:${port}:${dbname}"/>
<property name="user" value="${user}"/>
<property name="password" value="${pass}"/>
</bean>
<service ref="dataSource" interface="javax.sql.DataSource">
<service-properties>
<entry key="osgi.jndi.service.name" value="jdbc/oracleds"/>
<entry key="datasource.name" value="OracleDS"/>
</service-properties>
</service>
<bean id="LogToOracleDB" class="com.beans.LogToOracleDB">
<property name="dataSource" ref="dataSource" />
</bean>

我想在一些名为LogToOracleDB的bean文件中使用它

public class LogToOracleDB {
protected static DataSource dataSource;

public void test(Exchange exchange) throws SQLException {
Connection con = dataSource.getConnection();
Statement stmt = con.createStatement();
...............
}

由于数据源为空,因此从数据源获取连接时出现空指针异常。有人可以帮我查找数据源吗?

最佳答案

dataSource = (DataSource)context.lookup(JNDIname);

你必须这样使用,否则创建一个comboPool并尝试从中查看

关于java - 在java中使用blueprint中定义的数据源访问oracle db,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29942247/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com