欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java中使用Preferences 的 API设置用户偏好

程序员文章站 2024-03-12 23:17:26
preferences的中文意思即偏好或喜好的意思,也就是说同一个程序在每次运行完后,可以通过preferences来记录用户的偏好,下次启动时,程序会利用这些信息来了解用...

preferences的中文意思即偏好或喜好的意思,也就是说同一个程序在每次运行完后,可以通过preferences来记录用户的偏好,下次启动时,程序会利用这些信息来了解用户的喜好。而这些信息个人理解应该就是存储在系统的注册表中。

下面我们来学习一下java中的preferences的api; 概述:

本文将介绍自jdk1.4版本后可用的java的preferences. java的preferences api提供系统的方法来处理用户和系统的偏好及数据配置, 例如.保存用户设置,记住一个文本框的最后一个值等. 用java的preference保存的信息被存储在用户本地的机器上,这些信息将会被这个程序重复使用.

我们并不希望java preferences api来保存应用数据。

java preference api减轻了程序员编写代码来保存跨平台程序的配置信息的负担。

1. java preferences api 1.1. 介绍 the preferences api 提供一种系统的方法来处理用户的偏好设置信息,例如.保存用户设置, 记住某个文本框的最后一个值等.

preferences 是一个可以为任意名字的键/值对. 值可以为布尔型,字符型, 其他简单的数据类型,如int. preferences 通过get和set来获取和设置偏好信息,且get的方法可设置一个默认值,当要获取的键未被设置值时,就返回此默认值.

1.2. 数据的实际存储 数据的实际存储是依赖于操作系统平台的, 例如.在windows 下面是使用注册表来保存这些信息,而在linux下面是使用用户的home目录下面的一个隐藏文件来存储的.

2. api使用 java.util.prefs.preferences 很容易使用. 你不得不定义一个节点来存储数据. 接下来就可以使用get和set的方法. 第二个参数是默认值,即当找不到值时,得到的就是这个默认值了, 例如. 如果preference的值还未设置, 那么将会返回这个默认值.

创建代码如下:

import java.util.prefs.preferences; 
public class preferencetest { 
private preferences prefs; 
public void setpreference() { 
// this will define a node in which the preferences can be stored 
prefs = preferences.userroot().node(this.getclass().getname()); 
string id1 = "test1"; 
string id2 = "test2"; 
string id3 = "test3"; 
// first we will get the values 
// define a boolean value 
system.out.println(prefs.getboolean(id1, true)); 
// define a string with default "hello world 
system.out.println(prefs.get(id2, "hello world")); 
// define a integer with default 50 
system.out.println(prefs.getint(id3, 50)); 
// now set the values 
prefs.putboolean(id1, false); 
prefs.put(id2, "hello europa"); 
prefs.putint(id3, 45); 
// delete the preference settings for the first value 
prefs.remove(id1); 
} 
public static void main(string[] args) { 
preferencetest test = new preferencetest(); 
test.setpreference(); 
} 
} 

以上所述是小编给大家介绍的java中使用preferences 的 api设置用户偏好,希望对大家有所帮助