2016-02-01 55 views
1

在我的MySQL數據庫存儲我,所以我只存儲YYYY-MM-DD沒有關於時間的任何信息(我用DATETIME也存儲時間信息的其他表)日期DATE類型。 我的實體是:映射MySql的日期爲Java對象

@Entity 
@Table(name = "clientlicense", catalog = "ats") 
public class ClientLicense implements java.io.Serializable{ 

    /** 
    * 
    */ 
    private static final long serialVersionUID = 1L; 
    private Integer idClientLicense; 
    private Date startDate; 
    private Date endDate; 
    private int counter; 
    private String macAddress; 
    private String cpuId; 

但是,當我從我的Web用戶界面得到startDateendDate我收到甚至像2016年1月29日00時:00:00.0 我怎麼能只存儲日期到數據庫?我必須在我的HTML代碼中工作嗎?謝謝

回答

1

試用@Temporal JPA批註。

Anotating你的領域和不斷變化的類型應該有所幫助:

@Temporal(TemporalType.TIMESTAMP) 
private java.util.Date startDate; 

有效值爲:

TemporalType.DATE 
TemporalType.TIME 
TemporalType.TIMESTAMP 

它等價的

DATE – equivalent of java.sql.Date 
TIME – equivalent of java.sql.Time 
TIMESTAMP – equivalent of java.sql.Timestamp 
+0

與temporal.Date它的工作原理。 Thans – luca

0

您的實體映射對我來說似乎沒問題。 java.util.Date班級還提供時間信息。

您將需要格式化Web層上的日期對象。實施取決於您在前端使用的技術。

例如,如果您使用普通的JSP頁面,則可以使用java.text.SimpleDateFormat對象進行格式設置。

+0

唯一的問題是,這個日期字段是與不同字段的對象,我使用此代碼thymeleaf >,其中許可列表 – luca

+0

@luca的元素也許這是你在找什麼;) http://stackoverflow.com/questions/28808838/。你的情況,這可能是類似的東西: