Java 在运行时更改Tomcat JDBC池的用户名和密码

Java 在运行时更改Tomcat JDBC池的用户名和密码,java,tomcat,jmx,hikaricp,Java,Tomcat,Jmx,Hikaricp,使用HikariCP,可以在运行时更改整个池的用户名和密码。在创建池的过程中,只需设置poolName并将registerMbeans设置为true。 在运行时,您可以使用MXBeanProxy在运行时更改用户名和密码。看起来是这样的: public void changeUser(HikariDataSource ds, String newUser, String newPassword) { HikariConfigMXBean configBean = ds.getHikariC

使用HikariCP,可以在运行时更改整个池的用户名和密码。在创建池的过程中,只需设置poolName并将registerMbeans设置为true。 在运行时,您可以使用MXBeanProxy在运行时更改用户名和密码。看起来是这样的:

public void changeUser(HikariDataSource ds, String newUser, String newPassword) {
    HikariConfigMXBean configBean = ds.getHikariConfigMXBean();
    configBean.setUsername(user);
    configBean.setPassword(password);
            
    MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
    ObjectName poolName= new ObjectName("com.zaxxer.hikari:type=Pool (" + dbKey + ")");
    HikariPoolMXBean poolProxy = JMX.newMXBeanProxy(mBeanServer, poolName, 
                                 HikariPoolMXBean.class);
    poolProxy.softEvictConnections();
}
但是现在我搜索一些类似的代码来查找Tomcat连接池。或者在运行时更改Tomcat连接池的用户名和密码的另一种方法


我希望有人有想法。

我建议使用I/O读取属性文件,然后用该文件的内容填充changeUser方法。确保文件不在你的类路径中,而是在你可以更改它的地方。我正在寻找相同的文件。你找到办法了吗?