DB对象属性用包装类和基础类型的区别

版权声明:本文为博主原创文章,未经博主允许不得转载,转载请附原文链接说明出处。 https://blog.csdn.net/xupeng874395012/article/details/79753936

我们在操作数据库的时候以下这段代码是很常见的了

  <isNotEmpty property="status">
          status=#status#,
  </isNotEmpty>
private int  stauts;
private Integer status;

这两部分代码还是有区别的,

当我们使用int的时候,
1、如果数据库的信息支持null数据,那这个时候,查询会出现异常,
2、在做数据更新的时候,使用文章开头的那种使用方式的时候,因为status没有传过来值的时候默认为0
了,也就是说每次更新的时候,我们很有可能就会把数据给弄丢了。

当我们使用Integer的时候
1、空数据我们是可以兼容的,只需要在后续代码使用处理的时候校验下就行了
2、当传递过程中没有值的时候,这类熟悉的值就是null,不会造成数据丢失。

猜你喜欢

转载自blog.csdn.net/xupeng874395012/article/details/79753936