Spring JpaRepository 中每个 属性 的查找器方法的替代方法
Alternatives to finder methods for every property in Spring JpaRepository
我将 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
}
即使有三个属性,它看起来也够丑的了。
这种方法是否有更灵活的替代方法?或者这个设计还可以(至少我不用实现所有这些方法)?
找到 query by example。看来这就是我要找的。
我将 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
}
即使有三个属性,它看起来也够丑的了。 这种方法是否有更灵活的替代方法?或者这个设计还可以(至少我不用实现所有这些方法)?
找到 query by example。看来这就是我要找的。