oracleにタイプが "NUMBER"のデータベース列があります。longまたはlongを使用してoracleの「NUMBER」列をマップしますか?
ロングまたはロングでマップしたいです。しかし、どの型を使うべきかわからない、プリミティブ型またはObject型?大会はありますか?私の場合は、値が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;
}
編集:すべての答えのための
感謝。私はそれがnull値を受け入れる必要があるかどうかに依存するということを得ました。
このデータベース列はNULL可能ではありませんが、実際には主キーです。 OK、別の質問が表示されますが、一致する行が0の値か一致する行があるかどうかをどのように知ることができますか? java.sql.ResultSet.getLong
はlong
の値を返し、列の値がSQL NULL
の場合は0が返されます。または、そのような列に0
を有効にすることは悪い習慣ですか?
お返事ありがとうございます。私は更新しました。 –
@GrantZhu - 私の更新答えを見てください。 – ziesemer
ありがとう、たくさんの男。 –