在开发用户系统,使用用户权限中角色类型中的get方法在数据拷贝中,一直报空指针:
在测试数据拷贝的时间,拷贝的时间一致报空指针,后面根据分析调试发现roleTypeKey数据返回在roleTypeKey 为空,这个是数据装箱与拆箱的问题导致;枚举RoleType类型中Key为int数据类型,在程序编译后如下:
@Transient
private Integer roleTypeKey;
public Interger getRoleTypeKey(){
return getRoleType() != null ? getRoleType().getEnumItem().getItamKey():roleTypeKey.intVal();
}
当roleTypeKey数据为空时 拷贝调用getRoleTypeKey();方法时就出行空指针;