This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I have a parent table, t_books_category and a corresponding child table T_Book with a 1-n mapping. My configuration files for the two tables are as under:
Mapping for T_BOOKS table
Mapping for T_BOOKS_CATEGORY
As you can see I have been able to map the foreign key attribute of cat_id. However there is one further requirement, there is an additional column cat_Date which is also present in the child table and both values will be the same. However this field is a non key field in both the tables. How do i perform the mapping for this column such that save and update on the master table is cascaded to the child table too.
Hibernate has something called as dynamic-updates and dynamic-inserts.
If the child objects are loaded and if you are updating the category date in category, then when you change the category date in books hibernate automatically detects a change in value and fires a update query only to update the specified column.
Now I know that this feature directly works on the object, but I'm not sure if it works on the children associated with the object. You might want to try it.
This wouldn't work if you dates are generated automatically by the database.
If you are not laughing at yourself, then you just didn't get the joke.