我重定义了一个BatchPreparedStatementSetter对象,set参数的时候使用的是字符串数组,来传入一个个参数的值.当我需要传入一个序列器(S_BUS)作为其中一个值的时候,发现S_BUS传入数组链表LinkedList<Object[]> batch后,取出赋值(ps.setString(j + 1, (String) cellValues[j]);)的时候,是作为一个字符串"S_BUS.nextval",而不是我想要的序列器的值(1)插入数据库的,请问我要怎样才能解决这个问题呢? 谢谢! public int[] updateBatch(String insertSql, final LinkedList<Object[]> batch)
{
BatchPreparedStatementSetter bpss = new BatchPreparedStatementSetter()
{ public int getBatchSize()
{
return batch.size();
} public void setValues(PreparedStatement ps, int i)
throws SQLException
{
String[] cellValues = (String[]) batch.get(i);
// i每次调的时候自动加1
// System.out.println(i);
for (int j = 0; j < cellValues.length; j++)
{
// System.out.println((String) cellValues[j]);
// System.out.println(batch.get(i)[0]);
ps.setString(j + 1, (String) cellValues[j]);
} } };
return this.jdbcTemplate.batchUpdate(insertSql, bpss);
}
{
BatchPreparedStatementSetter bpss = new BatchPreparedStatementSetter()
{ public int getBatchSize()
{
return batch.size();
} public void setValues(PreparedStatement ps, int i)
throws SQLException
{
String[] cellValues = (String[]) batch.get(i);
// i每次调的时候自动加1
// System.out.println(i);
for (int j = 0; j < cellValues.length; j++)
{
// System.out.println((String) cellValues[j]);
// System.out.println(batch.get(i)[0]);
ps.setString(j + 1, (String) cellValues[j]);
} } };
return this.jdbcTemplate.batchUpdate(insertSql, bpss);
}
1、将代码作良好的格式化,以方便读者。
2、在发帖文本框的上方单击字体颜色右边的按钮,选择 Java
3、将代码粘贴到【code=Java】和【/code】之间。就会得到下面的效果:public class Hello { public static void main(String[] args) {
System.out.println("Hello!");
}
}
我重定义了一个BatchPreparedStatementSetter对象,set参数的时候使用的是字符串数组,来传入一个个参数的值.当我需要传入一个序列器(S_BUS)作为其中一个值的时候,发现S_BUS传入数组链表LinkedList <Object[]> batch后,取出赋值(ps.setString(j + 1, (String) cellValues[j]);)的时候,是作为一个字符串"S_BUS.nextval",而不是我想要的序列器的值(1)插入数据库的,请问我要怎样才能解决这个问题呢? 谢谢!
public int[] updateBatch(String insertSql, final LinkedList <Object[]> batch)
{
BatchPreparedStatementSetter bpss = new BatchPreparedStatementSetter()
{ public int getBatchSize()
{
return batch.size();
} public void setValues(PreparedStatement ps, int i)
throws SQLException
{
String[] cellValues = (String[]) batch.get(i);
// i每次调的时候自动加1
// System.out.println(i);
for (int j = 0; j < cellValues.length; j++)
{
// System.out.println((String) cellValues[j]);
// System.out.println(batch.get(i)[0]);
ps.setString(j + 1, (String) cellValues[j]);
} } };
return this.jdbcTemplate.batchUpdate(insertSql, bpss);
}
谢谢! 请帮我看看