java获取AD域用户信息 ,获取的信息只遍历出了1000条,想知道实在哪里被限制了吗,正常应该大于1000条
SearchControls searchCtls = new SearchControls();
// Specify the search scope
searchCtls.setSearchScope(SearchControls.SUBTREE_SCOPE);
// specify the LDAP search filter
String searchFilter = "objectclass=*";
// Specify the Base for the search 搜索域节点
String searchBase = "DC=wer,DC=com";
int totalResults = 0;
String returnedAtts[] = { "objectGUID", "name",
"userPrincipalName", "DisplayName", "Mail", "telephoneNumber",
"FacsimileTelephoneNumber", "Title", "Department", "userAccountControl" }; // 定制返回属性
searchCtls.setReturningAttributes(returnedAtts); // 设置返回属性集
ArrayList<ArrayList<HashMap<String,String>>> dataList=new ArrayList<ArrayList<HashMap<String,String>>>();
try {
NamingEnumeration answer = dc.search(searchBase, searchFilter,searchCtls);
ArrayList<HashMap<String,String>> grouplist=new ArrayList<HashMap<String,String>>();
ArrayList<HashMap<String,String>> userlist=new ArrayList<HashMap<String,String>>();
if (answer == null || answer.equals(null)) {
System.out.println("answer is null");
} else {
System.out.println("answer not null");
}
int a= 0;
while (answer.hasMoreElements()) {
a++;
SearchResult sr = (SearchResult) answer.next();
System.out.println(sr.getName());
if(sr.getName().contains("OU=qwer")){//只检索带qwer的
if(sr.getName().indexOf("OU=") < 0) {
continue;
}
// System.out.println("getname=" + sr.getName());
if(!sr.getName().contains("CN=")){//代表是用户组
//遍历节点及属性
grouplist.add(GroupTag(sr));
}else{//是用户
//遍历节点及属性
userlist.add(UserTag(sr));
}
}
}
System.out.println("一共循环了 :"+a +"次");
``
最后输出结果 一共循环了1000次,为什么是1000次呢?那个地方限制住了?求大神帮忙解答
修改LDAP查询默认1000条限制
http://www.68idc.cn/help/jiabenmake/qita/20140717116771.html
看看是不是和你一样的环境
接口应该是有分页条件的,不可能一个接口返回所有数据的
请求大神们帮忙看看到底是咋回事?为啥只循环了1000次,是数据源里面只有1000条数据吗?
那接口的分页条件在哪看呢?
代码不全怎么看,应该是你有个全局变量控制结果集的大小了吧
我看有个方法
public SearchControls() {
searchScope = ONELEVEL_SCOPE;
timeLimit = 0; // no limit
countLimit = 0; // no limit
derefLink = false;
returnObj = false;
attributesToReturn = null; // return all
}
这里面写的countLimit = 0; 应该是不限制大小的啊
还有谁能帮我解答一下嘛?还是说数据源就1000条?我觉得不太可能呢
这里有java代码参考
http://blog.csdn.net/liulufei11/article/details/31795431