गुण विरासत बन गए हैं। गुण के लिए प्राथमिकता वर्ग पसंद किया जाता है।
वरीयता डेटा के एक पदानुक्रमित संग्रह में एक नोड। यह वर्ग एप्लिकेशन को उपयोगकर्ता और सिस्टम वरीयता और कॉन्फ़िगरेशन डेटा को संग्रहीत और पुनर्प्राप्त करने की अनुमति देता है। यह डेटा एक कार्यान्वयन-निर्भर बैकिंग स्टोर में लगातार संग्रहीत होता है। विशिष्ट कार्यान्वयन में फ्लैट फाइलें, ओएस-विशिष्ट रजिस्ट्रियां, निर्देशिका सर्वर और एसक्यूएल डेटाबेस शामिल हैं। इस वर्ग के उपयोगकर्ता को बैकिंग स्टोर के विवरण से चिंतित होने की आवश्यकता नहीं है।
उन गुणों के विपरीत, जो स्ट्रिंग आधारित कुंजी-मूल्य जोड़े हैं, Preferences
वर्ग में प्रेफरेंस डेटा स्टोर में आदिम डेटा प्राप्त करने और डालने के लिए कई तरीके हैं। हम केवल निम्न प्रकार के डेटा का उपयोग कर सकते हैं:
- तार
- बूलियन
- दोहरा
- नाव
- पूर्णांक
- लंबा
- बाइट सरणी
गुण फ़ाइल लोड करने के लिए, या तो आप निरपेक्ष पथ प्रदान कर सकते हैं या उपयोग कर सकते हैं getResourceAsStream()
यदि गुण फ़ाइल आपके classpath में मौजूद है।
package com.mypack.test;
import java.io.*;
import java.util.*;
import java.util.prefs.Preferences;
public class PreferencesExample {
public static void main(String args[]) throws FileNotFoundException {
Preferences ps = Preferences.userNodeForPackage(PreferencesExample.class);
// Load file object
File fileObj = new File("d:\\data.xml");
try {
FileInputStream fis = new FileInputStream(fileObj);
ps.importPreferences(fis);
System.out.println("Prefereces:"+ps);
System.out.println("Get property1:"+ps.getInt("property1",10));
} catch (Exception err) {
err.printStackTrace();
}
}
}
xml फ़ाइल:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE preferences SYSTEM 'http://java.sun.com/dtd/preferences.dtd'>
<preferences EXTERNAL_XML_VERSION="1.0">
<root type="user">
<map />
<node name="com">
<map />
<node name="mypack">
<map />
<node name="test">
<map>
<entry key="property1" value="80" />
<entry key="property2" value="Red" />
</map>
</node>
</node>
</node>
</root>
</preferences>
वरीयताओं की दुकान के आंतरिक पर इस लेख पर एक नज़र है