Java中业务相关问题
# Java中业务相关问题
# 数据相关
# 定义JavaBean的时候为什么不用int而用Integer?
在使用ORM(mybatis、hibernate...)对象关系映射框架(object relation mapping)的时候,我们都需要定义一个JavaBean来映射数据表。
当定义成int或Integer类型时,对数据的存储并没有什么影响,可是在获取数据的时候会出现如下问题:
数据库中没有数据,可还是查出了数据。并且id为0,其原因是因为int有默认值为0,所以查询的时候,如果数据库没有数据的话就会查出一条id为0的数据,定义成Integer类型就不会出现上面的情况,因为引用数据类型的默认值是null。
另一方面,int是Java的基本数据类型,不允许为空。因此,如果你尝试将null赋值给int类型的变量,将会出现编译错误或者运行时异常。
此外还有,Java本身就是一个面向对象的编程语言,一切操作都是以对象作为基础,如像ArrayList,HashSet,Hashtable,HashMap等集合类中存储的元素,只支持存储Object类型
# VO类、DTO类、Model类分别代表什么意思
- entity里的每一个字段,与数据库相对应 ,有些叫做POJO、PO、
- dto里的每一个字段,是和你前台页面相对应 (Data Transfer Object)
- VO,这是用来转换从entity到dto,或者从dto到entity的中间的东西 (View Object)
上次更新: 2025/03/07, 06:05:43