大家好,如果这个问题在你们看来很愚蠢,我很抱歉。我有3个表currency (id| name) language (id | name | description) transaction (id|amount|languageId | currencyid)
所以我想插入到事务中,但要确保它没有插入未知的语言或货币(这意味着如果没有现有的父语言和货币,它就不应该插入到messagetemplate中)
以下是我的映射文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.myproject.model">
<class name="Transaction" table="transaction">
<id name="id">
<generator class="native"/>
</id>
<property column="amount" name="amount" type="String"/>
<many-to-one class="CurrencyImpl" column="currency" name="currency"/>
<many-to-one class="LanguageImpl" column="language" name="language"/>
</class>
</hibernate-mapping>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.myproject.model">
<class name="Currency" table="currency">
<id name="id">
<generator class="native"/>
</id>
<property column="currency_name" name="name" type="String"/>
</class>
</hibernate-mapping>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.myproject.model">
<class name="Language" table="language">
<id name="id">
<generator class="native"/>
</id>
<property column="language_name" name="name" type="String"/>
<property column="language_description" name="description" type="String"/>
</class>
</hibernate-mapping>在目前的映射中,似乎不是case.how可以做到这一点?感谢您的阅读
发布于 2009-10-27 03:42:43
您可以对CurrencyImpl和LanguageImpl进行多对一的引用,但这些类并没有映射,只有(可能对应的)接口被映射。我建议您从创建和映射具体的类开始,并在尝试与映射接口打乱之前使其正常工作。
https://stackoverflow.com/questions/1626853
复制相似问题