我将Spring Data JPA用于我的存储库层。我需要通过每个可能的属性及其属性的组合来查询实体。所以我的典型存储库看起来像这样。
public interface UserRepository extends JpaRepository<User, Long> {
User findByLogin(String login);
User findByEmail(String email);
User findByName(String name);
User findByLoginAndEmail(String login, String email);
User findByLoginAndName(String login, String name);
User findByLoginAndEmailAndName(String login, String email, String name);
//and so on
}
即使有三个属性,它看起来也很丑陋。 这种方法有更灵活的替代方案吗?或者这个设计没问题(至少我没有实现所有这些方法)?