V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
loveyu
V2EX  ›  问与答

Java 数据库绑定是使用 int 较好,还是 Integer 合适

  •  
  •   loveyu · 2015-06-15 12:25:55 +08:00 · 2465 次点击
    这是一个创建于 3442 天前的主题,其中的信息可能已经有所发展或是发生改变。
    int 有个问题就是在值为null时,数据变成0了,而Integer可以表示。但现在仅个别地方需要判断这个问题,有必要修改int为Integer么?
    4 条回复    2015-06-15 19:20:54 +08:00
    Septembers
        1
    Septembers  
       2015-06-15 14:07:40 +08:00 via Android   ❤️ 1
    see http://docs.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html#setNull%28int,%20int%29
    (除非业务指定null映射到0,否则不要破坏原始数据
    FrankFang128
        2
    FrankFang128  
       2015-06-15 14:10:44 +08:00 via Android   ❤️ 1
    那到时候出问题的地方就是这几个地方了。
    iyangyuan
        3
    iyangyuan  
       2015-06-15 18:13:54 +08:00 via iPhone   ❤️ 1
    用Integer则表示该属性可有可无,没有就是null。而大多数情况下,数值类型的属性为null不太合理,只能用int,但int默认为0,会影响空值判断,最简单的解决办法是系统中规定0为非法值,这样可以直接忽略为0的值。
    loveyu
        4
    loveyu  
    OP
       2015-06-15 19:20:54 +08:00
    @iyangyuan 我能想到的就是依据数据库中的定义,如果允许NULL,就设置为Integer,否则就设置为int
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1290 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 18:10 · PVG 02:10 · LAX 10:10 · JFK 13:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.