Tuesday, 13 April 2010

Ill-Advised Hibernate Mapping Quandary

I'm wondering if this is possible:

class Idea {
Collection primaryTags;
Collection secondaryTags;
}

class Proposal {
Collection
primaryTags;
Collection
secondaryTags;
}

Mapped to:

CREATE TABLE (
IDEA_ID VARCHAR(36), /* Foreign key */
PROPOSAL_ID VARCHAR(36), /* Alternate key */
TAG VARCHAR(100), /* Whatever was in the String */
TAG_TYPE VARCHAR(9) /* 'PRIMARY' or 'SECONDARY' */
);

I'm thinking.. no. My problem is that I can't see a way to get Hibernate to take care of the TAG_TYPE column - a value that exists in the database, and must be inserted whenever new rows are inserted, but has a value specific to the domain collection whence it came.

Hibernate supports computed properties, but those exist on the domain side, and not in the database. I want the opposite! :-)

Monday, 12 April 2010

This blog has moved


This blog is now located at http://blog.trilemma.com/.
You will be automatically redirected in 30 seconds, or you may click here.

For feed subscribers, please update your feed subscriptions to
http://blog.trilemma.com/feeds/posts/default.