serobj.java~30~

来自「JNDI课件」· JAVA~30~ 代码 · 共 45 行

JAVA~30~
45
字号
/*   改编:曾海  程序来自sun jndi教程,用于加一个serializable的对象到目录服务器里, 程序简单,但照抄sun书里的东西必然失败。 1 服务器上,你要加的组必须要有足够的permission,请设定好可以add,可以write 2 要加的地方请写全dn名称,否则比较惨  3 加的时候,加的cn名称不一定存在,但一定不能用uid ,因为加入的是一个对象结点,和用户完全不同! 4 加了一次第二次加就会出现重名错误!注意注意哦*/package jndi;import javax.naming.*;import java.util.Hashtable;import java.awt.Button;class SerObj {    public static void main(String[] args) {         String dn="uid=ZHai,ou=Groups,dc=jssvc,dc=com";         String pw="916";        Hashtable env = new Hashtable(11);        env.put(Context.INITIAL_CONTEXT_FACTORY,            "com.sun.jndi.ldap.LdapCtxFactory");        env.put(Context.PROVIDER_URL, "ldap://localhost:50028/");         env.put(Context.SECURITY_AUTHENTICATION ,"simple");         env.put(Context.SECURITY_PRINCIPAL ,dn);         env.put(Context.SECURITY_CREDENTIALS,pw);        try {            Context ctx = new InitialContext(env);            Button b = new Button("我按!");            //ctx.bind("cn=buttonz, ou=groups,dc=jssvc,dc=com ", b);//tnnd这次竟然成功了            Button b2 = (Button)ctx.lookup("cn=Buttonz,ou=groups,dc=jssvc,dc=com");            System.out.println(b2.getLabel() );            ctx.close();        } catch (NamingException e) {            System.out.println("Operation failed: " + e);        }    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?