openldap小结

1. 下载spring-ldap-1.3.0.RELEASE-with-dependencies.zip,里面doc,demo很全面,jar基本满足要求。

2. 附带的junit的test还是别运行了,跑好累了都不动。

3. demo中附带了\samples\demos\demo-tiger\src\test\resources\config\setup_data.ldif,可直接放入BDB。但放入前需先建立根节点,例如可使用下列代码建立:

dn: dc=jayway,dc=se
objectclass: dcObject
objectclass: organization
o: Example Company
dc: jayway
 
dn: cn=root,dc=jayway,dc=se
objectclass: organizationalRole
cn: root

4. 对象中存在外键的概念,假如有一复合对象,若想为对象属性赋值,不必须先建立此属性的对象。

dn: c=Sweden,dc=jayway,dc=se
objectclass: top
objectclass: country
c: Sweden
description: The country of Sweden
 
dn: ou=company1,c=Sweden,dc=jayway,dc=se
objectclass: top
objectclass: organizationalUnit
ou: company1
description: First company in Sweden

ou=company1,c=Sweden,dc=jayway,dc=se对象建立前,c=Sweden必须先建立好。在java中对象亦如此。

复制代码
package org.springframework.ldap.demo.dao;

import java.util.List;

import org.springframework.ldap.demo.domain.Person;

public class Test {

    PersonDaoImpl dao = new PersonDaoImpl();

    public Test() {
        super();
        init();
    }

    public final void init() {
        dao.setBase("dc=jayway,dc=se");
        dao.setPassword("secret");
        dao.setUrl("ldap://localhost/");
        dao.setUserDn("cn=root,dc=jayway,dc=se");
    }

    public static void main(String[] args) {
        Test test = new Test();
        List<String> names = test.dao.getAllPersonNames();
        for (String name : names) {
            System.out.println(name);
        }
        Person person = test.dao.findByPrimaryKey("Sweden", "company1",
                "Sam Tsui");
        person.setDescription("我靠");
        test.dao.update(person);
        System.out.println(person);
    }

    public void addPerson() {
        Person person = new Person();
        person.setCompany("company1");
        person.setCountry("Sweden");
        person.setDescription("Power Charge.");
        person.setFullName("Sam Tsui");
        person.setLastName("Tsui");
        person.setPhone("12345");
        dao.create(person);
    }

    public void deletePerson() {
        Person person = new Person();
        person.setCompany("company1");
        person.setCountry("Sweden");
        person.setFullName("Sam Tsui");
        dao.delete(person);
    }
}
复制代码

 

posted @   许仙儿  阅读(377)  评论(2编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示