7.7.2. 实施 UserQueryProvider
如果不实施 UserQueryProvider,管理控制台将无法查看和管理我们的示例提供者加载的用户。我们来看一下实施此界面。
PropertyFileUserStorageProvider
getUsers () 方法迭代属性文件的密钥集,委派为 getUserByUsername () 来加载用户。请注意,我们根据 第一个 结果和 maxResults 参数索引了这个调用。如果您的外部存储不支持分页,则您必须执行类似的逻辑。
PropertyFileUserStorageProvider
searchForUser () 的第一个声明采用 String 参数。这应该是字符串,用于搜索用户名和电子邮件属性来查找用户。这个字符串可以是子字符串,这也是我们在进行搜索时使用 String.contains () 方法的原因。
PropertyFileUserStorageProvider
采用 Map 参数的 searchForUser () 方法可以根据第一个、姓、用户名和电子邮件搜索用户。我们只存储用户名,因此我们只根据用户名进行搜索。我们委派给 搜索ForUser ()。
PropertyFileUserStorageProvider
我们不存储组或属性,因此其他方法会返回一个空列表。