SSH泛型basedao<T>执行根据ID查询时空指针异常,求解答

publicclassHrJobPublishActionextendsActionSupportimplementsSessionAware{privateHrJobP... public class HrJobPublishAction extends ActionSupport implements SessionAware {

private HrJobPublishService hrJobPublishService;
action中已注入service
调用service中根据ID查询方法:
HrJobPublish hjp = hrJobPublishService.queryHjpById(1);
public class HrJobPublishServiceImpl implements
HrJobPublishService {
private HrJobPublishDao hrJobPublishDao;
public HrJobPublish queryHjpById(int id) {
return hrJobPublishDao.queryById(id);
}
service中已注入hrJobPublishDao
然后hrJobPublishDao继承了BaseDao:
public interface HrJobPublishDao extends BaseDao<HrJobPublish>{}
BaseDao中:
public class BaseDaoImpl<T> extends HibernateDaoSupport implements BaseDao<T>{
private Class<T> entityClass;
public T queryById(Integer id) {
return this.getHibernateTemplate().get(entityClass, id);
}
}
到此执行该方法的时候
页面显示:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that
prevented it from fulfilling this request.
exception java.lang.NullPointerException
org.hibernate.impl.SessionImpl.get(SessionImpl.java:836)
org.springframework.orm.hibernate3.HibernateTemplate$1.doInHibernate(HibernateTemplate.java:519)
org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:406)
...........调试过程进入baseDao的时候,id还是有值的。但仍然报空指针异常,为什么呢?求解答
展开
 我来答
飞来横脚
2013-08-14 · TA获得超过195个赞
知道答主
回答量:49
采纳率:0%
帮助的人:52万
展开全部

无法定位楼主的问题,可以排查以下,比如:

  1. 将日志文件生成的select语句和ID进行拼凑,在数据库执行以下,看看select语句是否有问题

  2. 查询的entity类是否有问题,比如并没有对这个实体类进行扫描配置,没有被Hibernate扫描到,或是实体类本身有问题等

maye100
2013-08-14 · TA获得超过2650个赞
知道小有建树答主
回答量:1341
采纳率:100%
帮助的人:962万
展开全部
你数据库里有这个id的数据吗?
追问
问题出在,basedao里的无参构造方法。仍然谢谢你哦!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不正常人类111
2018-09-13
知道答主
回答量:62
采纳率:50%
帮助的人:14.8万
展开全部
楼主同问,你是怎么解决的?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式