Using derived properties
The value of derived properties is evaluated an expression at runtime by using formula attribute of property element in xml mapping metadata.
<property name="itemAmount" formula="20*ITEM_AMOUNT" type="double"/>
Property does not have column attribute or sub-element, it never appear in INSERT and UPDATE SQL statement. it appears only SELECT statement.
formula may refer to the column of database table, it can call SQL function and include sub-selects queries.
Note: formula is evaluated everytime when a entity instence is fetched from the underlying database (result may be outdated if property is modified).
Generated and default property values
Let properties of a class has its value that is generated by the database when a row is inserted or updated for the first time. So hibernate application needs to be refresh object that has these properties for which the database generates these values.
Hibernate provides generated attribute for property element in xml mapping metadata.
When Hibernate executes a INSERT or UPDATE SQL query that has this generated properties , it immediatly executes a SELECT SQL query to refresh the entity object that retrieved the generated values from the database.
<property name="createdDate" column="CREATED_DATE" generated="insert" update="false" insert="false"/>
Note: there are three attribute values for generated attribute : always, insert, never . always value is used for both INSERT and UPDATE SQL statement.
If you set the insert="false" and update="false" in the property element, than this column will never include in the INSERT and UPDATE SQL statement. the property value will treat as readOnly.
Interesting Article
ReplyDeleteSpring Hibernate Online Training | Hibernate Training in Chennai | Java Spring Hibernate Training Institutes in Chennai
Hibernate Online Training | Java Online Training | Java EE Online Training
In my point of view, this is really very well and informative content given about Using derived properties. Thanks for given this information here about this blog.
ReplyDelete1bhk Flats in Chhattarpur Enclave Phase1
Happy to found this blog. Good Post!. It was so good to read and useful to improve my knowledge as updated one, keep blogging. Hibernate Training in Electronic City
ReplyDeleteJava Training in Electronic City