У меня есть приложение Springboot с репозиториями, имеющими Spring Data JPA-запросы, такие как findOne, findAll, а также производные, такие как findByID или findByName и т. Д.
Чего я хочу добиться, так это многопользовательской работы. У всех сущностей есть столбец "account_id", который содержит владельца.
Как добавить фильтр, подобный "account_id", ко всем запросам, перечисленным выше, без использования производных запросов, которые содержат такие имена, как findIdAndAccountid (который будет findone)
@Repository
public interface CategoryRepository extends JpaRepository<Category, Long> {
Category findByName(String name);
}
Вот соответствующая сущность
@Entity
@Table(name = "unit")
@Data
public class Unit {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
private String name;
@Column(name = "account_id")
private Long account_id;
}
Я знаю, что большинство людей используют схемы в качестве разделения арендаторов, но для меня это невозможно. Есть ли способ (я не нашел один), чтобы добавить такое условие фильтра арендатора на эти запросы без написания NamedQueries или с использованием DerivedQueries. Решение Elegeant, такое как аннотирование хранилища или сущности или, может быть, запросы, к которым все запросы должны добавить дополнительный фильтр "account_id"?