在使用带有单个公共连接且没有任何池的PreparedStatement的情况下,我可以为每个具有预准备语句功能的dml / sql操作重新创建一个实例吗?
我的意思是:
for (int i=0; i<1000; i++) {
    PreparedStatement preparedStatement = connection.prepareStatement(sql);
    preparedStatement.setObject(1, someValue);
    preparedStatement.executeQuery();
    preparedStatement.close();
}代替:
PreparedStatement preparedStatement = connection.prepareStatement(sql);
for (int i=0; i<1000; i++) {
    preparedStatement.clearParameters();
    preparedStatement.setObject(1, someValue);
    preparedStatement.executeQuery();
}
preparedStatement.close();我的问题是我想将此代码放入多线程环境中,您能给我一些建议吗?谢谢
                  可以说如果查询正在更改,那么第二种方法还是更好的吧?有什么缺点吗?
                
                
                  
                    —
                    万人迷
                    
                  
                
              
sql在循环中不会更改?如果该查询在循环的每次迭代中都没有更改,那么为什么要PreparedStatement为每个迭代(在第一个代码段中)创建一个新的?有什么理由吗?