ResultSet: 通过索引检索列值与通过标签检索列值

19 浏览
0 Comments

ResultSet: 通过索引检索列值与通过标签检索列值

在使用JDBC时,我经常遇到像这样的结构:

ResultSet rs = ps.executeQuery();
while (rs.next()) {
    int id = rs.getInt(1);
    // 其他操作
}

我问自己(也问代码的)为什么不使用标签来检索列值:

int id = rs.getInt("CUSTOMER_ID");

我听到的最好的解释涉及性能。但实际上,这样处理会变得非常快吗?我不这么认为,尽管我从未进行过测量。即使按标签检索会慢一些,但在我看来,它提供了更好的可读性和灵活性。

所以有人能给我一个很好的解释,为什么要避免通过列索引而不是列标签来检索列值吗?两种方法的优缺点是什么(也许与特定的DBMS有关)?

0