Pon*_*oni 1 java orm hibernate
我有这些简化类型:
public class DataBean extends ZZZZZ {
public String name;
}
public class Member extends CCCCC {
public DataBean m_data;
}
Run Code Online (Sandbox Code Playgroud)
我想要地图m_data.name直接在Member.我不能在两者之间使用任何类型的继承(已经被占用!).
这将是理想的:
<property name="m_data.name" column="name" type="string" access="field" />
Run Code Online (Sandbox Code Playgroud)
任何的想法?是否可以使用Hibernate?
目前我收到此错误:
org.hibernate.PropertyNotFoundException:com.example.Member上找不到字段[m_data.name]
主要原因是我正在尝试(重新)使用从http服务中获取的数据bean,我真的不想重写所有字段,也不想编写setter/getter.
该name物业实际上是在DataBean课堂上.所以,你得到的例外是显而易见的.因为映射是为了Member.
该DataBean嵌入Member和田野中,你必须使用嵌入类映射<component>元素.
请在SO:Hibernate @embeddable注释等效的XML映射文件中参考这个问题的答案?
答案还有一个指向页面的链接,该页面解释了嵌入对象是如何映射它们的.
更新:
<component
name="m_data"
class="com.example.DemoBean"
access="field">
<property name="name" column="NAME" type="string" access="field" />
</component>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1196 次 |
| 最近记录: |