从DataSource类获取主机名

Ron*_*Ron 21 java database-connection datasource hostname

有没有办法从java中的DataSource类中获取主机名?我的意思是,我有一个DataSource对象(DS),它被注释以获取Jboss数据源.无论如何,我想获得该DS中使用的主机名.

调试,我可以这样看:我从DS获得连接,然后我得到DataSourceMetaData,其中有一个名为Protocol Connection的东西,它有主机名,但我不知道如何得到它.

这里有人知道怎么样?或另一种获取主机名的方法?提前致谢.亲切的问候,RDAM

Sur*_*ran 43

获得DatabaseMetaData后,只需调用getURL()方法,该方法应包含主机名,如下所示:

dataSource.getConnection().getMetaData().getURL();
Run Code Online (Sandbox Code Playgroud)

  • 真正的问题是除非连接成功,否则元数据不可用.如果getConnection()返回null,则不会获取元数据,并且将抛出异常.所以问题仍然存在,无论如何得到dataSourceProperties表的内部是数据源对象的一部分?我可以在调试器中看到它 - 只是无法从任何类公共方法中获取它. (3认同)