sql >> Database teknologi >  >> RDS >> PostgreSQL

Korrekt kortlægning mellem Java LocalDateTime og db

Du kan bruge konvertere:

import javax.persistence.AttributeConverter;
import javax.persistence.Converter;
import java.sql.Timestamp;
import java.time.LocalDateTime;

@Converter(autoApply = true)
public class DateTimeConverter implements AttributeConverter<LocalDateTime, Timestamp> {

  @Override
  public Timestamp convertToDatabaseColumn(LocalDateTime localDateTime) {
     return localDateTime != null ? Timestamp.valueOf(localDateTime) : null;
   }

  @Override
  public LocalDateTime convertToEntityAttribute(Timestamp timestamp) {
     return timestamp != null ? timestamp.toLocalDateTime() : null;
   }
}

Og:

import javax.persistence.AttributeConverter;
import javax.persistence.Converter;
import java.sql.Date;
import java.time.LocalDate;

@Converter(autoApply = true)
public class DateConverter implements AttributeConverter<LocalDate, Date> {

    @Override
    public Date convertToDatabaseColumn(LocalDate localDate) {
        return localDate != null ? Date.valueOf(localDate) : null;
    }

    @Override
    public LocalDate convertToEntityAttribute(Date date) {
        return date != null ? date.toLocalDate() : null;
    }
}



  1. Oprettelse af en Java-applikation i Oracle JDeveloper, del 2

  2. Hvordan kan jeg få emacs sql-mode til at bruge mysql-konfigurationsfilen (.my.cnf)?

  3. Skabelonmønstre og modifikatorer til formatering af dato/klokkeslæt i PostgreSQL

  4. Tabelnavn som parameter ved hjælp af PDO/MySQL forberedt sætning