これらの4つの変換オプションすべてについて、この小さなコードを作成しました。
- DateToLocalDateTimeConverter
- DateToLocalDateConverter
- LocalDateTimeToDateConverter
- LocalDateToDateConverter
これが例です
public class DateToLocalDateTimeConverter implements Converter<Date, LocalDateTime> {
@Override
public LocalDateTime convert(Date source) {
return source == null ? null : LocalDateTime.ofInstant(source.toInstant(), ZoneId.systemDefault());
}
}
ここにすべての例があります。
次に、これをmongodb接続のxml構成に含めることで、mongodbを使用してJava 8の日付で作業することができました(すべてのコンバーターを追加することを忘れないでください):
<mongo:mapping-converter>
<mongo:custom-converters>
<mongo:converter>
<bean class="package.DateToLocalDateTimeConverter" />
</mongo:converter>
</mongo:custom-converters>
</mongo:mapping-converter>