sql >> Database >  >> NoSQL >> MongoDB

Spring Data MongoDB met Java 8 LocalDate MappingException

Ik heb dit stukje code geschreven voor alle 4 deze conversie-opties:

  • DateToLocalDateTimeConverter
  • DateToLocalDateConverter
  • LocalDateTimeToDateConverter
  • LocalDateToDateConverter

Hier is een voorbeeld

public class DateToLocalDateTimeConverter implements Converter<Date, LocalDateTime> {

    @Override 
    public LocalDateTime convert(Date source) { 
        return source == null ? null : LocalDateTime.ofInstant(source.toInstant(), ZoneId.systemDefault()); 
    }
}

Alle voorbeelden hier.

Door dit vervolgens op te nemen in de xml-configuratie voor de mongodb-verbinding, kon ik in java 8-datums werken met mongodb (vergeet niet om alle converters toe te voegen):

<mongo:mapping-converter>
    <mongo:custom-converters>
        <mongo:converter>
            <bean class="package.DateToLocalDateTimeConverter" />
        </mongo:converter>
    </mongo:custom-converters>
</mongo:mapping-converter>


  1. PHP Mongo Fout bij lezen van socket

  2. Hoe een database met Mongoose te laten vallen?

  3. Wat betekent te veel positionele opties bij het doen van een mongo-export?

  4. Hoe krijg ik waarden van Redis met behulp van sleutels die spaties bevatten?