所以我有一个servlet,我使用默认模式(在JBoss管理控制台中设置)使用Datasource(我只传递JNDI名称)登录数据库,但稍后我需要连接到同一个数据库使用另一个模式来获取一些文本。
JBoss如何管理这个?我可以在java代码中以某种方式提供更新的模式和密码吗?
答案 0 :(得分:0)
Înstandalone.xml您声明所有数据源。通过查找InitialContext实例,jndi可以在运行时获取这些连接。
答案 1 :(得分:0)
使用JNDI形成连接时,您需要在管理控制台或standalone.xml文件中配置新数据源。这只是一个新的数据源,连接URL指向同一个数据库,但指向新的模式。
standalone.xml中的示例输出:
<datasource jta="false" jndi-name="java:/firstDS" pool-name="firstDS" enabled="true" use-ccm="false">
<connection-url>jdbc:oracle:thin:@devdb:1521:SCHEMA_1</connection-url>
<driver-class>oracle.jdbc.OracleDriver</driver-class>
<driver>oracle</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
...
<datasource jta="false" jndi-name="java:/secondDS" pool-name="secondDS" enabled="true" use-ccm="false">
<connection-url>jdbc:oracle:thin:@devdb:1521:SCHEMA_2</connection-url>
<driver-class>oracle.jdbc.OracleDriver</driver-class>
<driver>oracle</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
现在,在应用程序的第二部分中,您将在形成连接时引用第二个数据源的JNDI名称。