我正在使用 JDBC 模板并希望使用准备好的语句从数据库中读取数据。我遍历 .csv 文件中的多行,并在每一行上执行一些带有相应值的 SQL 选择查询。
我想加快从数据库中读取的速度,但我不知道如何让 JDBC 模板与准备好的语句一起工作。
有PreparedStatementCreator和PreparedStatementSetter。在这个例子中,它们都是用匿名内部类创建的。但是在 PreparedStatementSetter 类中,我无法访问我想在准备好的语句中设置的值。
由于我正在遍历 .csv 文件,因此我无法将它们硬编码为字符串,因为我不知道它们。我也无法将它们传递给 PreparedStatementSetter,因为构造函数没有参数。并且将我的值设置为 final 也很愚蠢。
我习惯于创建相当简单的准备好的语句。就像是
PreparedStatement updateSales = con.prepareStatement(
"UPDATE COFFEES SET SALES = ? WHERE COF_NAME LIKE ? ");
updateSales.setInt(1, 75);
updateSales.setString(2, "Colombian");
updateSales.executeUpdate():
就像在这个Java 教程中一样。