LDAP searchFilter samAccountName来自用户输入定义的变量? java JNDI。有人知道怎么做吗?

时间:2017-06-08 20:51:30

标签: java jndi scenebuilder

用户输入:

String  usersearch = UserSearchField.getText();

我希望searchFilter采用变量usersearch

String searchFilter ="(&(samAccountName=usersearch))"

但无法弄明白该怎么做。

1 个答案:

答案 0 :(得分:2)

您的搜索过滤器实际上正在搜索帐户名称" usersearch"。您需要格式化字符串以正确创建搜索过滤器。试试这个:

String searchFilter = String.format("samAccountName=%s", usersearch);

此代码会将%s替换为usersearch的值。此外,您不需要(&,因为当您拥有多个过滤器时,您需要对它们应用布尔AND运算符。有关详细信息,请参阅JNDI search filter docs