我在oracle中有一个数据库列,其类型是“NUMBER”。使用long或Long来映射oracle中的“NUMBER”列?
我想用long或long来映射它。但我不知道我应该使用哪种类型,原始类型还是对象类型?有一个约定吗?我的情况是,值是我想从DAO方法中唯一想要的:
public class SampleDAO{
public long fetchNumberValue(){
//Is it better to return long value instead of Long?
}
}
而且如果我想将该值包装在对象中呢?
public class SampleObject(){
//Is it better to use Long to use methods like hashCode() inherited from Object?
private Long value;
}
编辑:
感谢所有的答案。我知道这取决于我是否需要接受空值。
此数据库列不可为空,实际上它是主键。它可能有这样的值,如0,1,2等...好吧,另一个问题出现,我怎么知道如果我得到匹配的行与0值或没有匹配的行? java.sql.ResultSet.getLong
返回long
值,如果该列的值为SQL NULL
,则返回0。或者在这样的列中有0
有效是不好的做法?
感谢您的回答。我已更新。 – 2012-02-29 02:56:10
@GrantZhu - 查看我更新的答案。 – ziesemer 2012-02-29 03:02:54
非常感谢。 – 2012-02-29 03:22:15