X-Git-Url: https://juplo.de/gitweb/?p=jpa-converters;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fjpa%2Fconverters%2FLocalDateTimeConverter.java;h=24bf45b2e18cd60aed4f6159d2aad1f85be183f8;hp=0e5251d6372a94960d57aace79618bd4c00a45a2;hb=459423649abd980aee3f093606281819bbe4b83e;hpb=7a11c7d53d9546aa639a2e960811e321805ec643 diff --git a/src/main/java/de/juplo/jpa/converters/LocalDateTimeConverter.java b/src/main/java/de/juplo/jpa/converters/LocalDateTimeConverter.java index 0e5251d..24bf45b 100644 --- a/src/main/java/de/juplo/jpa/converters/LocalDateTimeConverter.java +++ b/src/main/java/de/juplo/jpa/converters/LocalDateTimeConverter.java @@ -1,36 +1,27 @@ package de.juplo.jpa.converters; -import java.time.Instant; +import java.sql.Timestamp; import java.time.LocalDateTime; -import java.time.ZoneOffset; -import java.util.Date; import javax.persistence.AttributeConverter; import javax.persistence.Converter; /** - * Converts a {@link LocalDateTime} to a {@link Date}, by converting it into - * an {@Instant} for the GMT-timezone and then convering that {@link Instant} - * into a {@link Date} as suggested in the official Java 8 Time tutorial. - *

- * The {@link Date} can then be persisted as - * {@link java.persistene.TemporalType.TIMESTAMP} with the help of the - * {@link java.persist.Tmporal}-annotation. - * @see https://docs.oracle.com/javase/tutorial/datetime/iso/legacy.html + * Converts a {@link LocalDateTime} to a {@link Timestamp}. * @author Kai Moritz */ @Converter(autoApply = true) -public class LocalDateTimeConverter implements AttributeConverter +public class LocalDateTimeConverter implements AttributeConverter { @Override - public Date convertToDatabaseColumn(LocalDateTime ldt) + public Timestamp convertToDatabaseColumn(LocalDateTime ldt) { - return Date.from(ldt.toInstant(ZoneOffset.UTC)); + return Timestamp.valueOf(ldt); } @Override - public LocalDateTime convertToEntityAttribute(Date date) + public LocalDateTime convertToEntityAttribute(Timestamp ts) { - return LocalDateTime.from(date.toInstant()); + return ts.toLocalDateTime(); } }