Spring的JavaBean处理null字段
前言
今天遇到一个问题,在用Spring框架提供的JavaBean方法时(将数据库查询的内容封装自己写的实体类的时候),当数据库有字段为null值的时候,会发生错误。如下图的bonus字段有null值,会报错,我提供两个方法,但推荐使用第一个,当然第二种也非常不错。(第一种相对于简单)。第一种是将实体类的字段名改为对象属性,而第二种是将传回的对象null转化为你对应实体类的默认值。这是两个互逆的过程,根据需求去选择自己的方法。
一、产生这种问题的原因
是因为字段返回的null为对象属性,而不是普通的int、double等数值属性,所以他会报错,他找不到匹配的对象。提供两种解决方法,推荐第一种!!!
二、解决方法
一、修改实体类字段名的属性值
如图:
方法:
将实体类中的 int 类型改为Integer(对象类型)
double 类型 改为 Double(对象类型)
总结:
哪为null,就将他的属性类型转化为与之相对应的对象类型即可。
二、重载JavaBean类方法
https://blog.csdn.net/qq_42154259/article/details/106659286
我在一个大佬CSDN看到的,虽然复杂一些,但是实操有效,它是将查询到的为null的字段的值转化为默认的你当前转化的类型的值。
例:
传回来的是null的值,你想接收int值,那么他将null转化为int默认值0,就不会报错了。(也非常不错)
总结
两种方法各有千秋,相比较而言第一种更加简单,但是第二种也会在许多其他的方面展现出优势来,自己选择,两种方法都是有效的。