Java中使用Preferences 的 API設(shè)置用戶(hù)偏好
Preferences的中文意思即偏好或喜好的意思,也就是說(shuō)同一個(gè)程序在每次運(yùn)行完后,可以通過(guò)Preferences來(lái)記錄用戶(hù)的偏好,下次啟動(dòng)時(shí),程序會(huì)利用這些信息來(lái)了解用戶(hù)的喜好。而這些信息個(gè)人理解應(yīng)該就是存儲(chǔ)在系統(tǒng)的注冊(cè)表中。
下面我們來(lái)學(xué)習(xí)一下Java中的Preferences的API; 概述:
本文將介紹自jdk1.4版本后可用的java的Preferences. Java的Preferences API提供系統(tǒng)的方法來(lái)處理用戶(hù)和系統(tǒng)的偏好及數(shù)據(jù)配置, 例如.保存用戶(hù)設(shè)置,記住一個(gè)文本框的最后一個(gè)值等. 用Java的Preference保存的信息被存儲(chǔ)在用戶(hù)本地的機(jī)器上,這些信息將會(huì)被這個(gè)程序重復(fù)使用.
我們并不希望Java Preferences API來(lái)保存應(yīng)用數(shù)據(jù)。
java Preference API減輕了程序員編寫(xiě)代碼來(lái)保存跨平臺(tái)程序的配置信息的負(fù)擔(dān)。
1. Java Preferences API 1.1. 介紹 The Preferences API 提供一種系統(tǒng)的方法來(lái)處理用戶(hù)的偏好設(shè)置信息,例如.保存用戶(hù)設(shè)置, 記住某個(gè)文本框的最后一個(gè)值等.
Preferences 是一個(gè)可以為任意名字的鍵/值對(duì). 值可以為布爾型,字符型, 其他簡(jiǎn)單的數(shù)據(jù)類(lèi)型,如int. Preferences 通過(guò)get和set來(lái)獲取和設(shè)置偏好信息,且get的方法可設(shè)置一個(gè)默認(rèn)值,當(dāng)要獲取的鍵未被設(shè)置值時(shí),就返回此默認(rèn)值.
1.2. 數(shù)據(jù)的實(shí)際存儲(chǔ) 數(shù)據(jù)的實(shí)際存儲(chǔ)是依賴(lài)于操作系統(tǒng)平臺(tái)的, 例如.在Windows 下面是使用注冊(cè)表來(lái)保存這些信息,而在Linux下面是使用用戶(hù)的home目錄下面的一個(gè)隱藏文件來(lái)存儲(chǔ)的.
2. API使用 java.util.prefs.Preferences 很容易使用. 你不得不定義一個(gè)節(jié)點(diǎn)來(lái)存儲(chǔ)數(shù)據(jù). 接下來(lái)就可以使用get和set的方法. 第二個(gè)參數(shù)是默認(rèn)值,即當(dāng)找不到值時(shí),得到的就是這個(gè)默認(rèn)值了, 例如. 如果preference的值還未設(shè)置, 那么將會(huì)返回這個(gè)默認(rèn)值.
創(chuàng)建代碼如下:
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設(shè)置用戶(hù)偏好,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Spring 中如何根據(jù)環(huán)境切換配置 @Profile
這篇文章主要介紹了Spring中如何根據(jù)環(huán)境切換配置@Profile的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
Java實(shí)例講解多態(tài)數(shù)組的使用
本文章向大家介紹Java多態(tài)數(shù)組,主要包括Java多態(tài)數(shù)組使用實(shí)例、基本知識(shí)點(diǎn)總結(jié)和需要注意事項(xiàng),具有一定的參考價(jià)值,需要的朋友可以參考一下2022-05-05
Elasticsearch學(xué)習(xí)之Terms?set?查詢(xún)
這篇文章主要為大家介紹了Elasticsearch學(xué)習(xí)Terms?set?查詢(xún)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
基于web項(xiàng)目log日志指定輸出文件位置配置方法
下面小編就為大家分享一篇基于web項(xiàng)目log日志指定輸出文件位置配置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Java操作mongodb增刪改查的基本操作實(shí)戰(zhàn)指南
MongoDB是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù),由c++語(yǔ)言編寫(xiě),旨在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案,下面這篇文章主要給大家介紹了關(guān)于Java操作mongodb增刪改查的基本操作實(shí)戰(zhàn)指南,需要的朋友可以參考下2023-05-05
如何在SpringBoot中使用Spring-AOP實(shí)現(xiàn)接口鑒權(quán)
這篇文章主要介紹了如何在SpringBoot中使用Spring-AOP實(shí)現(xiàn)接口鑒權(quán),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-09-09

