gpt4 book ai didi

java - 以编程方式设置数据源的用户名和密码

转载 作者:行者123 更新时间:2023-11-30 08:52:56 24 4
gpt4 key购买 nike

我需要将数据源传递到 Spring NamedParameterJdbcTemplate 中,以便我可以对其运行参数化查询。

public void setDataSource(DataSource dataSource)
{
this.dataSource = dataSource;
this.jdbcTemplateObject = new NamedParameterJdbcTemplate(dataSource);
}

Set<Integer> parameters = getSomeIds();
List<TableRow> rows = this.jdbcTemplateObject.query(config.getSql(), parameters, new TableRowMapper());

现在,如果我在 Spring Xml 中为 DataSource 设置用户名和密码就没问题了。

但是,我需要动态分配这些。如何配置用户名和密码?

最佳答案

这是在使用 dataSource.getConnection(username, password) 从 DataSource 获取连接时完成的.但是由于 JdbcTemplate 是为您从 DataSource 获取连接的那个,您需要将 DataSource 封装在 UserCredentialsDataSourceAdapter 中。 ,并将适配器传递给 JdbcTemplate。

UserCredentialsDataSourceAdapter dsAdapter = new UserCredentialsDataSourceAdapter();
dsAdapter.setTargetDataSource(dataSource);
dsAdapter.setUsername(username);
dsAdapter.setPassword(password);
this.jdbcTemplate = new NamedParameterJdbcTemplate(dsAdapter);

关于java - 以编程方式设置数据源的用户名和密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30020072/

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