2个回答
展开全部
空指针异常!
代码没问题!
就是数据库的问题了!
要不就是你的映射文件的问题!
如果你用的是依赖注入。HQL
查询语句应该是操作对象
from
类对象名称
where
对象。属性=ID;
代码没问题!
就是数据库的问题了!
要不就是你的映射文件的问题!
如果你用的是依赖注入。HQL
查询语句应该是操作对象
from
类对象名称
where
对象。属性=ID;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一、你的数据库可能没能查出相关数据来。就是说没查出id为9的记录。
第二、你的这段代码有问题,导致没查出相关记录是会导致异常的。问题有两处:
1.
if(list.size()
!=
0
&&
list
!=
nul
l)这句是错误的,如果list
==
null
,那么
null.size()确实是NullPointerException(空指针异常)。应该把这两个条件换过来,变成
if(list
!=
null &&
list.size()
!=
0
),这样,当list
==
null
时,list
!=
null 为假,形成短路与,不再判断list.size()
!=
0了。
2.你主函数调用实体方法时,直接使用tm.getId()。这也是错误的。看下你的getById(int
id)方法:如果没查到相关记录,返回的实体为null。那么,调用方法时接受到的实体也是null,同样的:NullPointerException(空指针异常)。应该先判断:
if(tm
!=
null)
System.out.println(tm.getId());
第二、你的这段代码有问题,导致没查出相关记录是会导致异常的。问题有两处:
1.
if(list.size()
!=
0
&&
list
!=
nul
l)这句是错误的,如果list
==
null
,那么
null.size()确实是NullPointerException(空指针异常)。应该把这两个条件换过来,变成
if(list
!=
null &&
list.size()
!=
0
),这样,当list
==
null
时,list
!=
null 为假,形成短路与,不再判断list.size()
!=
0了。
2.你主函数调用实体方法时,直接使用tm.getId()。这也是错误的。看下你的getById(int
id)方法:如果没查到相关记录,返回的实体为null。那么,调用方法时接受到的实体也是null,同样的:NullPointerException(空指针异常)。应该先判断:
if(tm
!=
null)
System.out.println(tm.getId());
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询