求大神重点详细地讲解下,try里的那段代码,万分感谢
``
public ZheJiuSheZhi get(int id)
{
Session sess = this.getSessionFactory().openSession();
try
{
return (ZheJiuSheZhi) sess.get(ZheJiuSheZhi.class, id);
}
finally
{
sess.close();
}
}`
return 后边括号里边的是类型转换,sess.get(ZheJiuSheZhi.class, id)应该是从session中通过id得到zhejiushezhi这个类的信息,这应该是反射
把这个值 sess.get(ZheJiuSheZhi.class, id)强转为(ZheJiuSheZhi)这个类型的,然后返回,至于Session里面定义的get方法的第一个参数你进入定义看一下
return 里的方法是把Session 中的get(zhejiuzhi.class,id)方法转换成ZheJiuSheZhi对象中的某个方法
这是hibernate中的语法,Session是数据库在hibernate中的全局映射,hibernate通过session的get方法取得数据库中id对应的数据,然后get方法会将该数据转换为ZheJiuSheZhi对象,这就是所谓的对象关系映射的转换。