When new Java record is persisted using repository's `save` method field access methods of the record are not called to read state of the passed record. Minimal reproducible example: [hajdamak/spring-data-jdbc-record-access](https://github.com/hajdamak/spring-data-jdbc-record-access) Requires Maven and JDK17. Call `mvn spring-boot:run` . Relevant output: ``` Saving record ... Constructor is accessed: (null, 0, test) Constructor is accessed: (5f5b5ea0-3c8c-4ea3-88d1-b02142d2b9b3, 1, test) Constructor is accessed: (5f5b5ea0-3c8c-4ea3-88d1-b02142d2b9b3, 1, test) ```