2015-11-15 53 views
0

我正在使用Spring mvc 4 + Hibernate的小型項目。

在JSP文件中,我使用jQuery的DatePickerjava.util.Date在Spring + hibernate中顯示未來日期的奇怪問題

在我的實體,當我使用

@NotNull 
    @Column(name = "schedule_date") 
    private Date scheduleDate; 

然後在控制其賦予值

scheduleDate = Mon Apr 11 00:00:00 IST 2016 

這是將來的日期(幾乎5月未來日期)但是當我使用

@NotEmpty 
    @Column(name = "schedule_date") 
    private String scheduleDate; 

隨後的控制器中的給予價值

scheduleDate = 16/11/2015 

這是正確的value.I不知道發生了什麼這裏

我應該如何解決這個問題,我想作爲數據類型,而不是使用字符串日期for scheduleDate變量

+0

這聽起來像一個格式化的問題。你的日期如何存儲在數據庫中?什麼是數據類型? – Tunaki

+0

因爲我在控制器問題我還沒有寫DAO –

回答

0

當您看到Date類型的值時,它是toString表示形式。

您遇到的問題是datePicker是JavaScript並且需要日期的字符串表示形式。

因此,不要直接從模型中查看日期屬性,而應使用日期格式化程序來傳遞日期。

+0

我是新來的春天如果你有任何例子,那麼讓我知道。我沒有得到你想說的話:)還有一件事要提到爲什麼它顯示將Date作爲數據類型的未來日期 –

1

謝謝大家的回覆。我解決了它。現在它給予正確的日期

Mon Nov 16 00:00:00 IST 2015 

相比

Mon Apr 11 00:00:00 IST 2016 

代碼我在控制器採用的是

@InitBinder 
public void initBinder(WebDataBinder webDataBinder) { 
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); 
dateFormat.setLenient(false); 
webDataBinder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true)); 
}