java中包装类和基本类型关系说明
很多其它语言中是没有包装类的概念的,因为java是面向对象的语言,为了操作方便还是引入了基本类型对应的包装
类,基本类型和其对应的包装类型可以完成自动拆箱和装箱。 平时用起来没什么问题,但是今天写一个简单请求时发
现了一个奇怪的问题。
案发现场,一个简单的get请求,目的是分页条件查询用户列表
前端传递的请求参数如下,前端将会发送json数据,springMVC帮我们映射成实体类
接下来这个参数向后传递,交给服务类一层层处理
最终交给mapper执行最终查询
一切看起来很完美.开始测试
异常是空指针,what?
看了半天之后发现了原因,传递的查询条件sex和stateId都传递的空值,在service层给定的类型是Integer,到了mapper层变成了int
由此得出最终结论
当包装类型为null时,不可以将其赋值给其对应基本类型,会扔出空指针异常!
``