2012-01-10 107 views
0
Date createddate = new Date(); 
project.setCreateddate(createddate); 
projectservice.savaorupdate(project); 

在上面的代碼「createddate」列保存... 當我編輯的bean,然後它涉及到不同的控制器我進入修改日期如何避免創建日期列覆蓋數據時更新

Date modifydate= new Date(); 
    project.setModifieddate(modifydate); 
    projectservice.savaorupdate(project); 

在此過程中,createddate列不會獲取值並將其無效。 請給出任何解決這種情況。

+0

進行更新時,您應該首先從數據庫中檢索「項目」,然後在其上設置值。 – Manish 2012-01-10 04:46:02

+0

我正在使用Spring窗體 - 所以當我在「/edit_save.htm」控制器中使用模型屬性時,我得到了除了修改日期(顯然)之外的項目bean的值..所以我把它記錄爲上面提到的.... – Meenakshi 2012-01-10 04:51:14

回答

0

我想休眠查詢也觸發未經修改的列更新。設置show-sql = true來找到它。

  <prop key="hibernate.show_sql">true</prop> 

您可以在標記級別設置dynamic-update = true進行排序。檢查鏈接here

<class 
    name="ClassName"        (1) 
    table="tableName"        (2) 
    dynamic-update="true|false"     (8) 
    dynamic-insert="true|false"     (9) 
/> 
+0

Aravind謝謝你的答案我應該在applicationcontext.xml中使用 true .... – Meenakshi 2012-01-10 12:25:24

+0

要提到我用註釋 – Meenakshi 2012-01-10 12:26:23

+0

@Meenakshi我猜你使用AnnotationSessionFactoryBean,如果是的話,你的applicationContext.xml下,你會發現\t財產\t <屬性名=「hibernateProperties」>,把它放在那休眠。 – 2012-01-10 12:53:29