Spring Data MongoDB with Java 8 LocalDate MappingException

后端 未结 3 1830
醉酒成梦
醉酒成梦 2020-12-06 17:45

I try to use the LocalTime from Java 8 Date Time API with Spring Data MongoDB. Inserting the document works as expected, but when I try to read the document, I get the follo

3条回答
  •  北荒
    北荒 (楼主)
    2020-12-06 18:01

    I wrote this little bit of code for all 4 of these conversion options:

    • DateToLocalDateTimeConverter
    • DateToLocalDateConverter
    • LocalDateTimeToDateConverter
    • LocalDateToDateConverter

    Here is an example

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

    All example here.

    Then by including this in the xml configuration for the mongodb connection I was able to work in java 8 dates with mongodb (remember to add all the converters):

    
        
            
                
            
        
    
    

提交回复
热议问题