测试 ResultSet 以查看它是否包含列标签

Ric*_*ard 2 java jdbc resultset

是否可以检查 ResultSet 以查看它是否包含当前行的列标签。我认为它由某种 Map 支持,因此提供 rs.contains("label") 方法不会那么昂贵,但我在 javadoc 中找不到。

我目前测试标签存在的方法是:

BigDecimal bid;
    try {
        bid = rs.getBigDecimal("bid");
    }
    catch(final SQLException e) {
        bid = null;
    }
Run Code Online (Sandbox Code Playgroud)

但这对我来说似乎不整洁,如果您想以这种方式测试多行,它将无法读取。

Mic*_*las 5

您可以使用可以从结果集中获取的元数据。使用rs.getMetaData(), 然后在元数据上有getColumnName()getColumnLabel()方法。