以前写HBM,用一对多或多对多的时候默认总是加上“inverse=true”。当时想法很简单就是由双方来维护之间的关联关系。今天才终于明白inverse的真正含义了!
其实inverse不复杂,但是要真正明白还是要稍微看一下源码。inverse的真正作用就是指定由哪一方来维护之间的关联关系。当一方中指定了“inverse=false”(默认),那么那一方就有责任负责之间的关联关系,说白了就是hibernate如何生成Sql来维护关联的记录!举个最简单的一对多父子关系。那么代码就写成:
父亲中的关系映射
{set name="children" lazy="true" inverse="true"}
{key column="parent_id"/}
{one-to-many class="test.Child"/}
08-06
28
An association from the table blur_article refers to an unmapped class: bl.site.myHibernate.po.perso
作者:Java伴侣 日期:2008-06-28
Hibernate升级到3以后,我发现原有的HibernateException异常被Hibernate自动处理了,于是把try/catch/finally去掉,结果就出了这么个异常,原因很简单,看代码:
catch块中的代码应该是:
否则通不过编译!应为抛出了异常后不能再有其它语句.
catch块中的代码应该是:
复制内容到剪贴板 程序代码
if (tx!=null) {
tx.rollback();
}
throw e;
tx.rollback();
}
throw e;
否则通不过编译!应为抛出了异常后不能再有其它语句.
Tags: Transaction started hibernate3
前段时间,学习了一下Hibernate,在这里推荐一本很容易上手的书<<夏昕.深入浅出Hibernate>>,这本书虽然我只看了前两章,但至少,一开始,我是根据这两章的介绍开始入手的.
一.学习之前的准备
1.安装ant
ant我老早前就装过了,好像也不难,网上资料也特别多.关键是最后环境变量的设置,设个ANT_HOME=ANT的安装目录,我的机器填的是"d:\ant1.6.1",再把"d:\ant1.6.1\bin"加到path里.
2.下载hibernate
到官方网站去下载.
3.下载Middlegen-Hibernate-r5
也到官方网站上去下载
4.下载hibernate-extensions
一.学习之前的准备
1.安装ant
ant我老早前就装过了,好像也不难,网上资料也特别多.关键是最后环境变量的设置,设个ANT_HOME=ANT的安装目录,我的机器填的是"d:\ant1.6.1",再把"d:\ant1.6.1\bin"加到path里.
2.下载hibernate
到官方网站去下载.
3.下载Middlegen-Hibernate-r5
也到官方网站上去下载
4.下载hibernate-extensions
Tags: hibernate