This commit ensures that null-safety is consistent between getters and setters in order to be able to provide beans with properties with a common type when type safety is taken in account like with Kotlin.

It also adds a few missing property-level @Nullable annotations.

Issue: SPR-15540

Comment From: sdeleuze

Feedback taken in account in https://github.com/spring-projects/spring-framework/commit/fb4ddb0746a3f194091043de328875596736427a.