在民族这一列不显示,是什么原因呀?
passenger表添加nation的从表
通过jsp界面显示界面的代码】
序号: | ${pa.id} |
民族 | ${pa.nation.word} |
姓名 | ${pa.name} |
身份证号码 | ${pa.idcardnumber} |
电话号 | ${pa.phone} |
从哪里来 | ${pa.fromwhere} |
到哪里去 | ${pa.togo} |
备注 | ${pa.remark} |
日期 | |
图片 |
public Passenger findById(java.lang.Integer id) {//根据id,查找一条新闻;
log.debug("getting Passenger instance with id: " + id);
Session session =getSession();
try {
Passenger instance = (Passenger) session.get("myhibernate.Passenger", id);
return instance;
} catch (RuntimeException re) {
log.error("get failed", re);
throw re;
}finally{session.close();}
}
我不明白到底哪里出现了错误,求帮助
民族后面的表达式这种形式获取不到值。
找到原因了,根据程序的运行,民族后面的表达式这种形式获取不到值。在${pa.nation.word}中,先抓取pa.nation,后抓取nation.word,先抓取pa.nation为空,则不抓取nation.word,所以${pa.nation.word}为null,修改相应的.hbm.xml文件,通过many-to-one 元素,可以定义一种常见的与另一个持久化类的关联得关系强度,即添加 lazy=false" 于 many-to-one 语句属性中,修改lazy="false" 指定nation.word关联总是被预先抓取。问题便解决了