新しいで
Date API
、我々は文字列変換解決するためにどのように伝えるために、ここで、木のピットの多くに遭遇したときLocalDateTime
の方法を
使用
従来の
String valueIn = "2018-01-24 10:13:52";
DateTimeFormatter DATETIME = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime ldt = LocalDateTime.parse(valueIn, DATETIME);
System.out.println(ldt);
出力
2018-01-24T10:13:52
夢
しかし、私はこの魚のような結果が欲しいです
2018-01-24T10:13:52
譲渡日は
、我々は書くことができます
DateTimeFormatter DATETIME = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss");
ミリ秒単位で番号をバック場合は?私たちは書くことができます
DateTimeFormatter DATETIME = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS");
SpringBoot統一治療
次の構成は、走査範囲のコンテキストにあるSpringBoot
@ControllerAdvice
public class VControllerAdvice extends ValidateControllerAdvice{
private static final DateTimeFormatter LOCAL_DATE_TIME = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
private static final DateTimeFormatter LOCAL_DATE = DateTimeFormatter.ofPattern("yyyy-MM-dd");
@InitBinder
public void initBinder(WebDataBinder binder) {
binder.registerCustomEditor(LocalDate.class, new PropertyEditorSupport() {
@Override
public void setAsText(String text) throws IllegalArgumentException {
this.setValue(LocalDate.parse(text, LOCAL_DATE));
}
});
binder.registerCustomEditor(LocalDateTime.class, new PropertyEditorSupport() {
@Override
public void setAsText(String text) throws IllegalArgumentException {
this.setValue(LocalDateTime.parse(text, LOCAL_DATE_TIME));
}
});
}
}
PS:パーフェクト