首先,分析各自的优缺点:
基本类型(以int类型为例子)
优点
1.用于计算时效率高
2.不会由于常量池引起比较大小的错误(例如java integer对象判断两个数字是否相等)
缺点
1.当数据库中查询出结果之后封装结果集的时候,如果返回的值时null时,直接赋值给这个基本类型的字段时,会在运行时报出异常,不能将null赋给一个基本类型,而用Integer就不存在这样都的情况,这个情况暂时没有合适的避免办法.当没有默认值的情况下
2.当页面传来的值是只有字段没有值时或者没有传来对应字段对象时候,赋值给基本类型的值时就会抛出异常.(如:如果表单中没有对应字段存在,那么request中换取到一个为null的值)
缺点的规避方法:
a.设置在数据库中为该字段设置默认值。
b.当用这个字段没有在表单中被提交时就会报错。
包装类型(Integer)
优点
1.可以存放null,从数据库中查出值时可能会有null
缺点
不能用于两个Integer对象双等的方式来判断两个对象的值相等,会出现错误的。
缺点规避方法:
要用双等判断两个对象的值是否相等时,可以通过调用intValue方法来实现。
因此,综上所说,实体类采用包装类型比较好。