2010-10-20 68 views
1

客户类具有名称属性,该名称属性对应于客户表中的名称字段。 客户类还定义用于放置fieldName和fieldValue的地图。从两个表中访问数据

关于数据库客户名称在customer表中定义和fieldvalue在表格中定义。 现在我怎么可以从客户表和字段值从表格中检索客户名称。 在HBM文件:

<map name="formFields" table="form" cascade="all-delete-orphan" lazy="true"> 
    <key column="id"/> 
    <index column="fieldName" type="string"/> 
    <element column="fieldValue" type="string"/> 
</map> 

我想显示两个项目。 我有一个类,第一个项目是同一类中的属性,第二个项目定义为同一个类中的地图函数中的地图键值的地图值。两个项目都在单独的表格中定义。如何显示这两个项目

回答

0

在读取数据时可以使用SELECT JOIN SQL查询,在创建/更新数据时可以使用ON UPDATE CASCADE SQL查询。

+0

这是一个休眠相关的问题..... – 2010-10-20 08:54:52

0

不要这样做。只是

  • Customer类中创建CustomerForm
  • 创建属性Form form之间的实体类Form
  • hbm.xml定义one-to-one关系,
  • 定义你的DAO或任何一个方法作为地图返回你namevalue
+0

在哪个类中定义返回名称和值的方法作为map..in Form类或Customer类? – singh 2010-10-20 09:53:07

+0

@singh:都没有。在一些CustomerDAO类中定义它,或者将其定义为CustomerDaoHelper,或者将其命名为CustomerDataUtil或任何适合您的东西。 – 2010-10-20 10:13:33