使用固定索引获取列?

时间:2013-10-22 09:15:51

标签: java database

编写程序以从数据库中获取记录时,代码可能如下所示:

private static final int IDX_A = 1;
private static final int IDX_B = 2;
....

resultSet.getInt(IDX_A);
resultSet.getInt(IDX_B);
....

如果要获取很多列,我们将有太多索引。所以另一个实现是:

int idx = 0;
resultSet.getInt(++idx);
resultSet.getInt(++idx);
....

为了速度考虑,我认为第一个更好。但是对于维护,我认为后者更好。

如果我们有很多专栏哪一个更好?谢谢。

1 个答案:

答案 0 :(得分:3)

在这种情况下,您可以完全忘记速度考虑因素:您正在调用数据库,因此在代码中花费的额外微秒数根本不重要。

我首选的解决方案如下:

private static final String COLUMN_A = "ColumnA";
private static final String COLUMN_B = "ColumnB";

resultSet.getInt(COLUMN_A);
resultSet.getInt(COLUMN_B);

这样可以避免在查询更改并将列添加到select子句时引入错误。

更好的是,使用JPA。