📄 refadd.java~2~
字号:
package jndi;import javax.naming.*;import java.util.Hashtable;import java.awt.Button;public class RefAdd {/* 改编:曾海 程序来自sun jndi教程,用于加一个对象的引用reference到目录服务器里, 程序简单,但照抄sun书里的东西必然失败。 准备:RefFruit.java,这个类实现引用接口,能返回一个引用的地址 RefFruitFactory,这个类由系统自动调用, 1 服务器上,你要加的组必须要有足够的permission,请设定好可以add,可以write 2 要加的地方请写全dn名称,否则比较惨 3 加的时候,加的cn名称不一定存在,但一定不能用uid ,因为加入的是一个对象结点,和用户完全不同! 4 加了一次第二次加就会出现重名错误!注意注意哦*/ public RefAdd() { } 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); RefFruit fruit = new RefFruit("Green"); ctx.bind("cn=playfruit,ou=groups,dc=jssvc,dc=com",fruit); //ctx.bind("cn=buttonz, ou=groups,dc=jssvc,dc=com ", b);//tnnd这次竟然成功了,没天理啊! RefFruit frt = (RefFruit )ctx.lookup("cn=playfruit,ou=groups,dc=jssvc,dc=com"); System.out.println(frt ); ctx.close(); } catch (NamingException e) { System.out.println("Operation failed: " + e); } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -