Object强转实体类为空
1、今天在写项目的时候遇到一个问题,还蛮基础的,哈哈,在这里记录一下,事情是这样的,以前我在写接口的时候,习惯返回类型是对象,时间长了就烦了,费时费力,特别傻X,想着换点花样,刚好了解到了另一个写法,就是把返回类型写成hashmap,这样就不用写实体类了,通过键值对的方式返回给前端,效率提高了N呗,但是也有局限性,例如:有时候需要返回excel文件,我们需要在实体类上对每个属性注上名字,然后需要强转
2、首先我做了一个类型判断,sql已经查询出了值,映射成了一个键值对
但是返回的数据却是空的,经过debug判断发现问题所在,
是因为继承的原因,因为Object是所有实体类的超类,在做类型判断时,根据sql返回的属性,去匹配类型判断的实体对象属性 “TLabelDetailEntity” ,因为“TLabelDetailEntity”继承了其他类,导致携带了父类属性,所以在做类型判断的时候属性对不上,导致判断失败,结果自然为空。