Hi..
 
Is it possible to map multiple objects to one table?
I tried it and it gave me wrong objects! :-/
 
I have 1 table, which is modelled by 2 different objects.
Reason for this is that the 2nd object hold large BLOB data, so I'd like to keep them separate
for performance reasons.
 
 
My XML is something like this
 
 
<hibernate-mapping>
 <class name="com.nic.interx.model.Broadcast" table="BROADCASTS">
  <id name="id" column="ID" type="integer">
   <generator class="sequence">
    <param name="sequence">GEN_BROADCAST</param>
   </generator>
  </id>
  <property name="name" column="NAME" type="string"/>
  <property name="totalCount" column="TOTAL_COUNT" type="integer"/>
  <property name="description" column="DESCRIPTION" type="string"/>
 </class>
 
 <class name="com.nic.interx.model.BroadcastTemplate" table="BROADCASTS">
  <id name="id" column="ID" type="integer">
   <generator class="assigned"/>
  </id>    
  <property name="data" column="BROADCAST_TEMPLATE"
   type="com.nic.hibernate.types.BinaryType"/>
 </class>
</hibernate-mapping>
 

 
As for my query..
 
Broadcast bc = (Broadcast)session.load( Broadcast.class, broadcastId);
BroadcastTemplate bct = (BroadcastTemplate)session.load( BroadcastTemplate.class, broadcastId);
 
Since Broadcast and BroadcastTemplate shares the same primary key ID, and table,
Hibernate seems to be confused and actually returned me a Broadcast object in the 2nd query.
(It should be returning BroadcastTemplate object instead)
 
 
 
 
 

Reply via email to