1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

The wrong date (LocalDate) saved in database

Discussão em 'Outras Linguagens' iniciado por Stack, Janeiro 27, 2021.

  1. Stack

    Stack Membro Participativo

    I had problem: -I send date as a string from angular - pattern "yy-mm-dd" -I convert this String to LocalDate in Java. Connection to DB:

    spring.datasource.url=jdbc:mysql://localhost:3306/families?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC


    Date in converted correctly - I checked this during debugging. But date is incorrect in db, for example: I send 2018-12-02 but in db 2018-12-01 is saved.

    Conversion from dto to entity

    @Override
    public Father convertToEntity(FatherDto fromDto) {
    LocalDate birthDate = LocalDate.parse(fromDto.getBirthDate(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));
    return new Father(fromDto.getId(), birthDate, fromDto.getFirstName(), fromDto.getLastName(), fromDto.getPesel(), fromDto.getSecondName());
    }


    Repository

    @Repository
    public interface FatherRepository extends JpaRepository<Father, Integer> {
    }


    Method used to save in db

    @Override
    @Transactional
    public void addFatherToFamily(int familyId, FatherDto fatherDto) {
    Family family = familyRepository.findById(familyId).get();
    Father father = fatherConverter.convertToEntity(fatherDto);
    father.setFamily(family);
    fatherRepository.save(father);
    }

    Continue reading...

Compartilhe esta Página