我目前正在使用Vaadin框架。我想将DateField
中的字符串转换为Date
。所以我有两个类,一个是视图,另一个应该包含我用数据绑定保存的值。
这是视图中的DateField:
timestart = new DateField("");
timestart.setId("timestart");
timestart.setDateFormat("yyyy-MM-dd HH:mm");
timestart.setValue(new Date());
timestart.setResolution(Resolution.MINUTE);
timestart.setConverter( XXX ); // Here i don't know what to do
layout.addComponent(timestart, 3, 2);
在同一个类中绑定数据:
binder.bind(timestart, "timestart");
//This part is working
在我的另一堂课中:
private Date timestart;
我想将此timestart
保存在数据库中,因此我需要一个格式化的值,如上面的yyyy-MM-dd HH:mm
,但是当我在没有timestart.setConverter
的情况下执行此操作时,我会得到一个类似{{1}的日期}}
我该怎么做?
答案 0 :(得分:1)
您需要在bean类中格式化Date。不在您的查看代码中。
private SimpleDateFormat dateFormat;
private Date timestart;
public ConstructorOfYourClass{
timestart = new Date(); //Default date
//Your prefered date format
dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm");
}
//... other Code ...
//Getter method of your Date
public String getdateFormat(){
return dateFormat.format(timestart);
}