pgjdbc / r2dbc-postgresql

Postgresql R2DBC Driver

Home Page:https://r2dbc.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Encode/Decode of other Java 8 DateTime types

hantsy opened this issue · comments

I tried to use Year type(INT in the db column) in my projects(Spring Boot 3.0.4, R2dbc 1.0, Postgres R2dbc 1.0.1.RELEASE), and got the following exception when run repository test against a Postgres testcontainers instance:

java.lang.IllegalArgumentException: Cannot encode parameter of type java.time.Year (2023)

I think all missing Java 8 DateTime types should be supported in Postgres R2dbc drivers.

  • Year
  • Month
  • DayOfWeek
  • DayOfMonth
  • YearMonth
  • etc.

Feel free to submit a pull request.

@hantsy Nice addition, does it work, can you rearrange the code to minimize the diff? getDefaultCodecs() seems to be mostly the same, but is shown as a complete replacement.