我一直在寻找一种从ResultSet中提取可空值的漂亮方法,与wasNull相反。文档(API规范)保证"无类型"当列包含NULL时,getObject(返回Object)返回null,使以下构造有效:(Boolean)rs.getObject(1)
。
当然,我更愿意做rs.getObject(1, Boolean.class)
- 但由于某种原因,对于类型过载,没有提供这样的保证。
或者是他们?也许我只是错过了一些东西?我在here找不到任何特定的oveload,而且JDBC规范似乎完全忽略了这样的重载。
那么,NULL会被rs.getObject(1, Boolean.class)
转换为空,或者不是它们,或者是依赖于实现的,或者它取决于应用程序中定义的一些自定义转换?