我有一个列表数据,我必须使用jdbc将其插入数据库。我的问题是列表的大小并不总是恒定的,有时它给出ArrayIndexOutOfBoundExp
。所以我需要动态插入记录。
目前我正在为列表大小10插入记录,现在如果我得到大小为5的列表呢?
public void setValues(PreparedStatement ps, int ean) throws SQLException {
ps.setLong(1,Id);
答案 0 :(得分:0)
您可以通过列表迭代(包括java 8流方法):
List<String> columnsList = mpGeometryBeanList.get(mpGeometryBeanIndex);
for(int i = 0; i < columnsList.size(); i++){
ps.setString(i + 2, columnsList.get(i));
}
或者您可以将准备好的语句更改为接受列表值(需要查看更多代码)
答案 1 :(得分:0)
使用for循环。
ps.setLong(1,attachmetId);
for(int i=0; i<mpGeometryBeanList.get(mpGeometryBeanIndex).getColumnList().size(): i++){
ps.setString(i+2,mpGeometryBeanList.get(mpGeometryBeanIndex).getColumnList().get(i));
}