「java查询ldap」java查询数据库并显示窗口

博主:adminadmin 2022-12-12 22:12:06 97

本篇文章给大家谈谈java查询ldap,以及java查询数据库并显示窗口对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java ldap根据用户名查询

search base ,ou=Sites,dc=asia,dc=jci,dc=com

filter ou=‘user01'这样就可以检索到了。

Java获取Ldap叶子节点

使用netscape的ldap工具包。使用其它的工具包,写法类似。

注:必须知道base dn,以下假定ou=admin为base dn。若有明确的base dn,那写法比如:ou=admin,o=test1

源代码如下:

==========================

import netscape.ldap.*;

public class SearchTest {

public static void main(String[] args) {

LDAPConnection lc = null;

LDAPEntry findEntry = null;

int status = -1;

try {

// lc = ConnectionPool.

lc = new LDAPConnection();

/* Connect to server */

String MY_HOST = "localhost";

int MY_PORT = 389;

lc.connect(MY_HOST, MY_PORT);

System.out.println("1=========" +lc.isConnected());

lc.authenticate("cn=Directory Manager","password");

System.out.println("2=========" +lc.isConnected());

/* search for all entries with surname of Jensen */

String MY_FILTER = "(objectclass=*)";

String MY_SEARCHBASE = "ou=admin";

LDAPSearchConstraints cons = lc.getSearchConstraints();

cons.setBatchSize(0);

cons.setMaxResults(5);

MY_FILTER = "(objectclass=*)" ;

LDAPSearchResults res = lc.search(MY_SEARCHBASE,

LDAPConnection.SCOPE_ONE,

MY_FILTER,

null,

false,

cons);

while (res.hasMoreElements()) {

LDAPEntry cLDAPEntry = res.next() ;

System.out.println("" + cLDAPEntry.getDN());

System.out.println("" + cLDAPEntry.toString());

}

status = 0;

} catch (LDAPException e) {

System.out.println("Error: " + e.toString());

e.printStackTrace();

}

/* Done, so disconnect */

if ((lc != null) lc.isConnected()) {

try {

lc.disconnect();

System.out.println("3=========" +lc.isConnected());

} catch (LDAPException e) {

System.out.println("Error: " + e.toString());

}

}

System.out.println("4=========" +lc.isConnected());

System.exit(status);

}

}

LDAP在JAVA中如何模糊查询

/** * 获得LDAP连接(不通过连接池,直接获得连接) * @return * @throws Exception */ private javax.naming.directory.DirContext getDirContext() throws Exception { DirContext ctx = null; java.util.Hashtable env = new java.util.Hashtable(); env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); env.put(Context.PROVIDER_URL, "ldap://localhost:389"); env.put(Context.SECURITY_AUTHENTICATION, "simple"); env.put(Context.SECURITY_PRINCIPAL, user); env.put(Context.SECURITY_CREDENTIALS, pwd); ctx = new InitialDirContext(env); return ctx; } /** * 返回用户查询接口 * @param DN 查找范围 ou=test,dc=abcd,dc=com * @param filter 过滤条件 cn=* * @param myserach 搜索范围 * @return LDAP标准接口 * @throws Exception */ public javax.naming.NamingEnumeration getFilter(String DN,String filter,int myserach) throws Exception { DirContext ctx = getDirContext(); try { NamingEnumeration em; SearchControls con = new SearchControls(); con.setSearchScope(myserach); em = ctx.search(DN, filter, con); return em; } finally { // } } /** * 设置条件查找 * @param dn 查找的根结点 * @param filter 查找条件 * @param level 查找范围 * @return 返回一个由DN组成的JAVA STRING 列表 * @throws Exception */ public java.util.Vector getfilterNodes(String dn,String filter,int level) throws Exception { java.util.Vector ve=new java.util.Vector(); NamingEnumeration em=getFilter(dn,filter,level); while(em!=null em.hasMoreElements()) { SearchResult rs=(SearchResult)em.nextElement(); String db=rs.getName(); if (db.trim().equals("")) ve.add(dn); else ve.add(db+","+dn); } return ve; }

java ldap 查询报错,急求大神解决啊,谢谢

LDAP: error code 49表示认证失败

请检查你的BINDDN和对应的密码,一定要写正确才行。

与base DN没有关系。

java查询ldap的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java查询数据库并显示窗口、java查询ldap的信息别忘了在本站进行查找喔。

The End

发布于:2022-12-12,除非注明,否则均为首码项目网原创文章,转载请注明出处。