2
我有一個Hibernate實體,代表我們的Partner
s。我們希望通過連接表將該夥伴關聯到活動的「Type
」(另一個實體)(由於Type
可以在許多情況下使用)。需要注意的是,連接是基於日期的(版本控制)。根據版本日期表示hibernate實體中連接表的單個元素
我想是這樣的:
Partner.getActiveType()
代表
select * from partner_to_type_map
where partner_id = xxx
and now() between effective_from and effective_to;
我當然可以代表加入表作爲一個實體,他們有實體referencable在我Set<PartToTypeMap>
,這將使使用它可怕笨重。我將不得不整理這些數據,通過它來找出合適的數據。我可以通過dao和一些HQL來做到這一點,但是我會喜歡正確的對象。
連接表:
我看着@Version
註釋,但它似乎並沒有被我想要的東西(雖然我可能是錯的)。
如果需要,我可以發佈代碼,但確實如此,Partner
是一個簡單的實體。
CREATE TABLE `partner_to_type_reg_map` (
`partner_id` int(11) unsigned NOT NULL,
`account_key_type_id` INT(10) UNSIGNED NOT NULL,
`effective_from` Timestamp NOT NULL,
`effective_to` TIMESTAMP NULL,
PRIMARY KEY (`partner_id`),
UNIQUE KEY `account_key_type_id` (`account_key_type_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;