2007-05-25
hbm文件id的配置
关键字: hbm文件
有两个实体类user和point
它们是一对一的关系
这是我的hbm文件
point.hbm.xml
user.hbm.xml
我想用主键关联的形式标明他们的一对一关系
我使用的mssql,用jtds驱动
在使用工具生成表的时候jboos报出以下错误
“could not instantiate id generator”
请问我的配置文件错在那
它们是一对一的关系
这是我的hbm文件
point.hbm.xml
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="org.ankang06.external.trainingschool.core.Point" table="TRAININGSCHOOL_POINT"> <id name="id" column="id" type="java.lang.Integer"> <generator class="foreign"> <param name="porperty">user</param> </generator> </id> <property name="allPoint" type="java.lang.Integer"> <column name="all_point" /> </property> <property name="knowInPoint" type="java.lang.Integer"> <column name="know_in_point" /> </property> <property name="knowOutPoint" type="java.lang.Integer"> <column name="know_out_point" /> </property> <!-- 设置user类与point类的一对一关系 --> <one-to-one name="user" class="org.ankang06.external.trainingschool.core.User" constrained="true"/> <!-- 设置point类与pointHistory类的一对多关系 --> <set name="pointHistory" inverse="true"> <key column="point_id" /> <one-to-many class="org.ankang06.external.trainingschool.core.PointHistory" /> </set> </class> </hibernate-mapping>
user.hbm.xml
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="org.ankang06.external.trainingschool.core.User" table="TRAININGSCHOOL_USER"> <id name="id" type="java.lang.Integer" unsaved-value="0"> <column name="id" /> <generator class="identity" /> </id> <property name="userID" type="java.lang.Integer" unique="true" index="INDEX_USER_ID"> <column name="user_id" not-null="true" /> </property> <property name="name" type="java.lang.String"> <column name="name" length="50" not-null="true" /> </property> <property name="otherName" type="java.lang.String"> <column name="other_name" length="50" /> </property> <property name="type" type="java.lang.Integer"> <column name="type" /> </property> <property name="gender" type="java.lang.Integer"> <column name="gender" /> </property> <property name="introduce" type="java.lang.String"> <column name="introduce" length="50" /> </property> <property name="companyName" type="java.lang.String"> <column name="company_name" length="50" /> </property> <property name="provinceName" type="java.lang.String"> <column name="province_name" length="50" /> </property> <!-- 设置User类与UserCircle类的多对一关系 --> <many-to-one name="userCircle" column="user_circle_id" foreign-key="FK_USER_USERCIRCLE" class="org.ankang06.external.trainingschool.core.UserCircle" /> <!-- 设置User类与Question类的一对多关系 --> <bag name="questions" cascade="all" lazy="false"> <key column="user_id" foreign-key="FK_QUESTION_USER" /> <one-to-many class="org.ankang06.external.trainingschool.core.Question" /> </bag> <!-- 设置User类与Answer类的一对多关系 --> <bag name="answers" cascade="all" lazy="false"> <key column="user_id" foreign-key="FK_ANSWER_USER" /> <one-to-many class="org.ankang06.external.trainingschool.core.Answer" /> </bag> <!-- 设置User类与UserBulletin类的一对多关系 --> <bag name="bulletins" cascade="all" lazy="false"> <key column="user_id" foreign-key="FK_USERBULLETIN_USER" /> <one-to-many class="org.ankang06.external.trainingschool.core.UserBulletin" /> </bag> <!-- 设置User类(message的接受方)与UserMessage类的一对多关系 --> <bag name="toMessages" inverse="true"> <key> <column name="touser_id" /> </key> <one-to-many class="org.ankang06.external.trainingschool.core.UserMessage" /> </bag> <!-- 设置User类(message的发送方)与UserMessage类的一对多关系 --> <bag name="fromMessages" inverse="true"> <key> <column name="fromuser_id" /> </key> <one-to-many class="org.ankang06.external.trainingschool.core.UserMessage" /> </bag> <!-- 设置user类与point类的一对一关系 --> <one-to-one name="point" class="org.ankang06.external.trainingschool.core.Point" cascade="all" outer-join="true" /> </class> </hibernate-mapping>
我想用主键关联的形式标明他们的一对一关系
我使用的mssql,用jtds驱动
在使用工具生成表的时候jboos报出以下错误
“could not instantiate id generator”
请问我的配置文件错在那
评论
caiying0504
2007-06-25
谢谢楼上的回答
驱动不能换,因为另一种驱动不支持二次查询,用不了hql
我用唯一外键关联的方式解决了上述的一对一关系
驱动不能换,因为另一种驱动不支持二次查询,用不了hql
我用唯一外键关联的方式解决了上述的一对一关系
rainlife
2007-05-25
<id name="id" type="java.lang.Integer" unsaved-value="0">
<column name="id" />
<generator class="identity" />
</id>
配置文件没有错误,你换一个驱动,或将generator 改成native试试。
- 浏览: 5055 次
- 性别:

- 来自: 北京

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
如何通过看源码学习框架
寻找出路的苍蝇 写道Joard 写道光看源代码是没太大作用的 尤其是想通过看源代 ...
-- by aidiyuxin -
struts2中的select标签的 ...
"注意,headerKey不可以为空,不可以为-1。" 不可能,
-- by runjia1987 -
如何通过看源码学习框架
就是真想写,写个Spring微缩版也是不难的。偶最近正在瞅Spring.net的 ...
-- by ray_linn -
如何通过看源码学习框架
异常怎么被禁言了?难怪这几天看不到他的回复。
-- by yanshiyi -
如何通过看源码学习框架
抛出异常的爱 写道akane 写道寻找出路的苍蝇 写道同志,你有没有自己试过自己 ...
-- by mal_lonely






评论排行榜