This version is still in development and is not considered stable yet. For the latest stable version, please use Spring Data LDAP 3.4.0! |
Query Methods
Most of the data access operations you usually trigger on a repository result in a query being run against the LDAP directory. Defining such a query is a matter of declaring a method on the repository interface, as the following example shows:
interface PersonRepository extends PagingAndSortingRepository<Person, String> {
List<Person> findByLastname(String lastname); (1)
List<Person> findByLastnameFirstname(String lastname, String firstname); (2)
}
1 | The method shows a query for all people with the given lastname .
The query is derived by parsing the method name for constraints that can be concatenated with And and Or .
Thus, the method name results in a query expression of (&(objectclass=person)(lastname=lastname)) . |
2 | The method shows a query for all people with the given lastname and firstname .
The query is derived by parsing the method name.
Thus, the method name results in a query expression of (&(objectclass=person)(lastname=lastname)(firstname=firstname)) . |
The following table provides samples of the keywords that you can use with query methods:
Keyword | Sample | Logical result |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|