我相信你已经阅读了
read/write to Windows Registry using Java,然后在使用java.util.Preferences API时想要比注册表另一个后端
原文链接:https://www.f2er.com/windows/371291.html您可以扩展Preference
API,如Bernhard或Croft,如this article所述:
Because the 07005 is back-end neutral,you need not care whether the data are stored in files,database tables,or a platform-specific storage such as the Windows Registry.
new Preferences
can be seen here扩展示例.
那比IMO更好,而不是使用另一个API.
例如,搜索延伸java.util.prefs.AbstractPreferences
的类:
de.unika.ipd.grgen.util.MyPreferences
import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.prefs.AbstractPreferences; import java.util.prefs.BackingStoreException; /** * Own implementation of the Java preferences API,that does not use * a "OS backing store" but relies on importing and exporting the * preferences via xml files. * Also,If a preference is got,but was not in the tree,it is entered. */ public class MyPreferences extends AbstractPreferences { private Map<String,String> prefs = new HashMap<String,String>(); private Map<String,AbstractPreferences> children = new HashMap<String,AbstractPreferences>(); public MyPreferences(MyPreferences parent,String name) { super(parent,name); } /** * @see java.util.prefs.AbstractPreferences#putSpi(java.lang.String,java.lang.String) */ protected void putSpi(String key,String value) { prefs.put(key,value); }
>或者您可以将这些首选项存储在LDAP中:
de.tarent.ldap.prefs.LDAPSystemPreferences
import java.util.prefs.AbstractPreferences; import java.util.prefs.BackingStoreException; import javax.naming.NamingException; import javax.naming.directory.Attributes; import de.tarent.ldap.LDAPException; import de.tarent.ldap.LDAPManager; /** * @author kirchner * * Preferences im LDAP */ public class LDAPSystemPreferences extends AbstractPreferences { LDAPManager ldm = null; Properties properties = new Properties(); //Map für key/value der Preferences Map cache = new HashMap(); //Map für timestamp der Preferences Map timestamp = new HashMap(); private Boolean deleted = Boolean.FALSE;
com.adito.boot.PropertyPreferences:
import java.util.prefs.AbstractPreferences; import java.util.prefs.BackingStoreException; import java.util.prefs.Preferences; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; /** * A simple implementation for the preferences API. That stores preferences * in propery files. We do not have to worry about sharing the preferencese * with other JVM instance so there is no need for any kind of synchronising * or locking. */ public class PropertyPreferences extends AbstractPreferences {