java:BigDecimal还是Integer有什么区别??Oracel保存的数值类型对应java,java中用什么类型好?

java中与Oracle数据库对应的数据类型,当数据库保存为Number,或者别的类型,java中用什么类型好?我发现,我们的后台,int几乎不要用到诶,都是用Integ... java中 与 Oracle数据库对应的数据类型,当数据库保存为Number,或者别的类型,java中用什么类型好?我发现,我们的后台,int 几乎不要用到诶,都是用Integer什么原因? 展开
 我来答
568145421
2011-09-02 · 知道合伙人软件行家
568145421
知道合伙人软件行家
采纳数:1353 获赞数:6756

向TA提问 私信TA
展开全部
第一个问题:
二者的区别就是运算后的精度问题,这个在对结果精度要求很高的情况下使用,如银行系统,电子商务交易。
第二个问题:
Number可以对应java中任意的数字类型,如整型和浮点型,java中选取当然还是和业务有关啦。
第三个问题:
最后一点说的就是开发经验了,有经验的人都这么干,为的就是能更好更直接的与数据库映射,更方便的使用框架进行开发如hibernate。
更多追问追答
追问
我想再问:当我用BigDecimal 来定义实体类时,报了个错:
org.hibernate.PropertyAccessException
后来我将类型改成Integer,又能成功执行了。你觉得这是什么原因??

数据库里面为Number类型,没有小数。
追答
Java数据类型	       Hibernate数据类型	标准SQL数据类型(不同的DB可能有所差异)
java.math.BigDecimal big_decimal NUMERIC
映射的配置出问题了,导致映射不过去。
jimlaren
2011-09-02 · TA获得超过400个赞
知道小有建树答主
回答量:253
采纳率:0%
帮助的人:193万
展开全部
Integer是int的封装类,可以为null,所以映射一般为Integer,hibernate中也是这样的,推荐用封装类映射。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
leecyz
2011-09-02 · TA获得超过139个赞
知道答主
回答量:45
采纳率:0%
帮助的人:34.4万
展开全部
在后台写实体类时,int与Integer都可以,建议使用Integer,一切皆对象。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友dfb61d1b0
2011-09-02 · TA获得超过404个赞
知道小有建树答主
回答量:385
采纳率:66%
帮助的人:151万
展开全部
BigDecimal和Integer精度不同 ,int 默认值为0; Integer 可以为 null。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wptpp
2011-09-02 · TA获得超过187个赞
知道小有建树答主
回答量:357
采纳率:0%
帮助的人:199万
展开全部
用Integer吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式