Использование аннотаций @Where и @WhereJoinTable в Hibernate отличается применительно к тому, к какой таблице применяется ограничение. 13
@Where позволяет указать ограничение для объекта или коллекции при извлечении из базы данных. 23 Ограничение пишется на языке SQL. 13
@WhereJoinTable используется для добавления ограничения к таблице соединения, которая хранит связь между двумя таблицами. 3 Например, если у категории может быть много продуктов, а продукт может входить в несколько категорий, то обычно есть таблица соединения, которая хранит отношения между двумя таблицами. 3 В такой ситуации для добавления ограничения к этой таблице используется @WhereJoinTable. 3
Таким образом, основное отличие в том, что @Where применяется к целевой таблице объекта, а @WhereJoinTable — к таблице соединения. 1