有效地进入准备状态

时间:2012-04-24 11:05:46

标签: java prepared-statement

我在我的代码中使用PreparedStatement,因为我有很多特殊字符要插入到数据库中。

我的一些表有很多列,所以一次分配一个参数似乎有些过分。是否有更好/更有效的指定参数?

干杯!

1 个答案:

答案 0 :(得分:2)

我不清楚你的问题是什么。

必须在PreparedStatement中单独设置参数 - 这是因为您需要告诉PreparedStatement如何在数据库中表示不同的Java对象。

但是,您可以轻松编写一个类/方法,允许您传入args的Object [],然后可以使用适当的索引和对象处理将其添加到PreparedStatement。

有些事情:

private static void setParameters(PreparedStatement stmt, Object[] args){
  for (int i=0; i<args.length; i++){
    setArgument(stmt, i+1, args[i]);
  }
}

private static void setArgument(PreparedStatement stmt, int index, Object arg){
  if (arg instanceof MyObject){
    stmt.set[X](index, handleMyObject(arg));
  }
}