package de.etecture.ga.config; import java.time.Duration; import java.time.temporal.ChronoUnit; import java.util.Arrays; import java.util.List; import org.springframework.core.convert.converter.Converter; import org.springframework.data.convert.ReadingConverter; import org.springframework.data.convert.WritingConverter; import org.springframework.data.jdbc.repository.config.AbstractJdbcConfiguration; import org.springframework.stereotype.Component; @Component public class DataBaseConfiguration extends AbstractJdbcConfiguration { @Override protected List userConverters() { return Arrays.asList(new DurationToLongConverter(), new LongToDurationConverter()); } @WritingConverter public class DurationToLongConverter implements Converter { @Override public Long convert(Duration duration) { return duration.toSeconds(); } } @ReadingConverter public class LongToDurationConverter implements Converter { @Override public Duration convert(Long duration) { return Duration.of(duration, ChronoUnit.SECONDS); } } }