Ограничения Bean Validation могут быть как для поля, так и для свойства get. Однако spe c рекомендует использовать только одну стратегию доступа, а при использовании JPA использовать ту же стратегию доступа, что и для персистентности.
Вот соответствующая часть спецификации Bean Validation spe c (см. Раздел 5.1. 2):
Объявления ограничений можно применять как к полям, так и к свойствам для одного и того же типа объекта. Однако одно и то же ограничение не должно дублироваться между полем и связанным с ним свойством (проверка ограничения будет применяться дважды). Рекомендуется, чтобы объекты, содержащие объявления ограничений, придерживались единой стратегии доступа к состоянию (аннотированные поля или свойства).
ПРИМЕЧАНИЕ Java Постоянство и проверка bean-компонентов Для максимальной переносимости постоянные свойства, содержащие Ограничения проверки bean-компонентов, должны использовать ту же стратегию доступа, что и Java Persistence . Другими словами, разместите ваши аннотации ограничений Bean Validation на том же элементе (поле или получателе), что и ваши Java Постоянные аннотации.
Когда поле аннотируется объявлением ограничения, стратегия доступа к полю используется для доступа к состоянию, подтвержденному таким ограничением.
Когда свойство аннотируется объявлением ограничения, стратегия доступа к свойству используется для доступа к состоянию, проверенному таким ограничением.