Integer的默认值是null,而int的默认值是0。
数据库中的INT类型对应的是Integer,而不是int。
定义属性值int类型的时候,在数据库中默认null,当插入操作的时候会把默认值变成0。
定义属性值Integer类型的时候,在数据库中默认也是null,但是当插入操作的的时候默认值会变成null。
所以在后端对该属性进行判断是否为空时,需注意二者的区别,一个判断是否为null,一个判断是否为0。
但在实际的应用中有些类型的值为0是有意义的,如 gender(性别):0(代表女)1(代表男),此时当插入的数据为空时,int就会插入0,产生歧义。
因此建议使用Integer,而非int