日期:2014-05-17  浏览次数:20935 次

怎么判断数据是否存在
一条不存在的数据通过service层的方法可以实例化出来
Member member = memberService.findBySn(sn);

再通过这个实例化出来的对象去拿数据
System.out.println(member.getDelStorageInventorys().size());

这样会报空指针异常,因为我传进来的这个sn是新的,数据库里找不到对应的member,但为什么能实例化呢?
我现在想通过这个sn去判断member是否存在,该怎么做呀?

//如果member存在则执行以下操作
if (member.getDelStorageInventorys().size() == 0) {

}

我现在这样判断根本不起作用,,,执行不到里面的化码。新人。求高手指点下呀,
javaWeb

------解决方案--------------------
Member member = this.memberService.findBySn(sn);
        if (member != null&&member.getDelStorageInventorys()!=null&&member.getDelStorageInventorys().size()>0) {
            delStorageInventory.setMember(this.memberService.findBySn(sn));
            delStorageInventory.setOperator(this.adminService.getCurrent());
            delStorageInventory.setDelStorage(this.delStorageService.find(delStorageId));
            delStorageInventory.setSn(this.snService.generate(Sn.Type.delStorageInventory));
            /** 数据验证 */
            if(!isValid(delStorageInventory, new Class[0])) {
                return ERROR_VIEW;
            }
            this.delStorageInventoryService.save(delStorageInventory);
        }