Мне нужно преобразовать дату с шаблоном "гггг-ММ-дд" в формат строки "дд.мм.гггг". Теперь у меня есть это. Метод getAsText () не работает, а setAsText работает. Что я делаю не так?
DateEditor.java
@Component
public class DateEditor extends PropertyEditorSupport {
@Override
public void setAsText(String value) {
try {
setValue(new SimpleDateFormat("yyyy-MM-dd").parse(value));
} catch (Exception ex) {
setValue(null);
}
}
@Override
public String getAsText() {
String sdf = "";
try {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
dateFormat.setLenient(true);//-
Date date = dateFormat.parse((String) getValue());
sdf = new SimpleDateFormat("dd.MM.yyyy").format(date);
System.out.println(sdf);
} catch (ParseException p) {}
return sdf;
}
}
Инициатор
@InitBinder
public void initBinder(WebDataBinder dataBinder) {
dataBinder.registerCustomEditor(Date.class,new DateEditor());
}