Java通过Preferences设置个人偏好

package com.test.test;

import java.util.prefs.Preferences;

public class PreferenceTest {
	private Preferences prefs;

	public void setPreference() {
		prefs = Preferences.userRoot().node(this.getClass().getName());
		String str01 = "str01";
		String str02 = "str02";
		String str03 = "str03";
		
		System.out.println(prefs.getBoolean(str01, true));
		System.out.println(prefs.get(str02, "String"));
		System.out.println(prefs.getInt(str03, 50));
		prefs.putBoolean(str01, false);
		prefs.put(str02, "StringBuffer");
		prefs.putInt(str03, 45);
		
		prefs.remove(str01);
	}

	public static void main(String[] args) {
		PreferenceTest test = new PreferenceTest();
		test.setPreference();
	}
}

 第一次运行结果:

    true
    String
    50

 之后运行结果:

    true
    StringBuffer
    45

 

  除非把类名改掉,否则之前保存过的信息,其实并没有删除。

  比如把3个String属性名字变掉之后,运行,再把3个String属性名变回原来的名字,此时输出还是保存的结果值。

  (因为3个属性名跟值被写入了注册表this.getClass().getname()的位置上,只有删除注册表信息才能清空。可以用  pers.removeNode()清空注册表信息。)

 

 

你可能感兴趣的:(java,注册表,Perferences,偏好设置)