jpa 根据属性自定方法名查询接口
时间: 2023-07-28 07:46:03 浏览: 90
通过方法名字构建查询-多抽样率数字信号处理理论及其应用(1-50)页
在 JPA 中,可以通过自定义方法名来实现根据实体属性进行查询,这种方式称为“方法名查询”或“命名查询”。
具体实现方法如下:
1. 在 Repository 接口中定义方法,方法名需要遵守一定的规则,以实现根据属性自动解析查询语句。
2. 方法名的规则如下:
- findBy + 属性名(首字母大写):根据属性名精确匹配查询。
- findBy + 属性名(首字母大写) + 查询条件:根据属性名和条件进行查询。
- findBy + 属性名(首字母大写) + 查询条件 + And/Or + 属性名(首字母大写) + 查询条件:根据多个属性和条件进行查询。
3. 在方法中可以使用关键字来指定查询条件,例如:Like、IsNull、GreaterThan、LessThan 等。
4. 如果需要进行分页查询,可以在方法名中加入 Pageable 参数。
示例代码如下:
```
public interface UserRepository extends JpaRepository<User, Long> {
// 根据用户名查询用户信息
User findByUsername(String username);
// 根据用户名和密码查询用户信息
User findByUsernameAndPassword(String username, String password);
// 根据用户名模糊查询用户信息
List<User> findByUsernameLike(String username);
// 根据年龄查询用户信息,并按照用户名升序排序
List<User> findByAgeOrderByUsernameAsc(int age);
// 分页查询年龄大于指定值的用户信息
Page<User> findByAgeGreaterThan(int age, Pageable pageable);
}
```
以上就是 JPA 根据属性自定义方法名查询接口的实现方式。
阅读全文