通常在存储库上触发的大多数数据访问操作都会导致对 LDAP 目录运行查询。 定义这样的查询是在存储库接口上声明方法的问题,如以下示例所示:
具有查询方法的 PersonRepository
interface PersonRepository extends PagingAndSortingRepository<Person, String> {
List<Person> findByLastname(String lastname); (1)
List<Person> findByLastnameFirstname(String lastname, String firstname); (2)
}
1 | 该方法显示对具有给定 .
通过分析可与 和 连接的约束的方法名称来派生查询。
因此,方法名称将生成 .lastname And Or (&(objectclass=person)(lastname=lastname)) |
2 | 该方法显示对具有给定 和 的所有人的查询。
查询是通过分析方法名称派生的。
因此,方法名称将生成 .lastname firstname (&(objectclass=person)(lastname=lastname)(firstname=firstname)) |
1 | 该方法显示对具有给定 .
通过分析可与 和 连接的约束的方法名称来派生查询。
因此,方法名称将生成 .lastname And Or (&(objectclass=person)(lastname=lastname)) |
2 | 该方法显示对具有给定 和 的所有人的查询。
查询是通过分析方法名称派生的。
因此,方法名称将生成 .lastname firstname (&(objectclass=person)(lastname=lastname)(firstname=firstname)) |
下表提供了可用于查询方法的关键字示例:
关键词 | 样本 | 合乎逻辑的结果 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|