Modeling first attempt for DB

This commit is contained in:
Matthias Engelien
2024-09-08 16:38:17 +02:00
parent a0cf2d1854
commit 6985e0ea87
8 changed files with 123 additions and 11 deletions

View File

@@ -0,0 +1,44 @@
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.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
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<Duration, Long> {
@Override
public Long convert(Duration duration) {
return duration.toNanos();
}
}
@ReadingConverter
public class LongToDurationConverter implements Converter<Long, Duration> {
@Override
public Duration convert(Long duration) {
return Duration.of(duration, ChronoUnit.NANOS);
}
}
}