The vlastnosti objekt obsahuje pár kľúč a hodnotu ako reťazec. Trieda java.util.Properties je podtriedou Hashtable.
Môže sa použiť na získanie hodnoty vlastnosti na základe kľúča vlastnosti. Trieda Properties poskytuje metódy na získanie údajov zo súboru vlastností a uloženie údajov do súboru vlastností. Okrem toho sa dá použiť na získanie vlastností systému.
Výhoda súboru vlastností
Opätovná kompilácia sa nevyžaduje, ak sa informácie zmenia zo súboru vlastností: Ak sa zo súboru vlastností zmenia nejaké informácie, triedu java nemusíte znova kompilovať. Používa sa na ukladanie informácií, ktoré je potrebné často meniť.
Konštruktory triedy Vlastnosti
Metóda | Popis |
---|---|
Vlastnosti() | Vytvorí prázdny zoznam vlastností bez predvolených hodnôt. |
Vlastnosti (predvolené nastavenia vlastností) | Vytvorí prázdny zoznam vlastností so zadanými predvolenými hodnotami. |
Metódy triedy Vlastnosti
Bežne používané metódy triedy Vlastnosti sú uvedené nižšie.
Metóda | Popis |
---|---|
verejné neplatné zaťaženie (Reader r) | Načítava dáta z objektu Reader. |
verejné neplatné zaťaženie (InputStream je) | Načítava údaje z objektu InputStream |
public void loadFromXML(InputStream in) | Používa sa na načítanie všetkých vlastností reprezentovaných dokumentom XML v zadanom vstupnom toku do tejto tabuľky vlastností. |
verejný reťazec getProperty (kľúč reťazca) | Vracia hodnotu na základe kľúča. |
verejný reťazec getProperty (kľúč reťazca, predvolená hodnota reťazca) | Vyhľadá vlastnosť pomocou zadaného kľúča. |
public void setProperty (kľúč reťazca, hodnota reťazca) | Volá put metódu Hashtable. |
verejný neplatný zoznam (PrintStream out) | Používa sa na tlač zoznamu vlastností do zadaného výstupného prúdu. |
verejný neplatný zoznam (Vytlačený zapisovač)) | Používa sa na tlač zoznamu vlastností do zadaného výstupného prúdu. |
public Enumeration propertyNames()) | Vráti zoznam všetkých kľúčov zo zoznamu vlastností. |
public Set stringPropertyNames() | Vráti sadu kľúčov zo zoznamu vlastností, kde kľúč a jeho zodpovedajúca hodnota sú reťazce. |
verejný neplatný obchod (Writer w, reťazec komentár) | Zapíše vlastnosti do objektu Writer. |
verejný neplatný obchod (OutputStream os, reťazec komentár) | Zapíše vlastnosti do objektu OutputStream. |
public void storeToXML (OutputStream os, reťazec komentár) | Zapisuje vlastnosti do objektu Writer na generovanie dokumentu XML. |
public void storeToXML(Writer w, reťazec komentár, reťazec kódovanie) | Zapisuje vlastnosti do objektu Writer na generovanie dokumentu XML so zadaným kódovaním. |
Príklad triedy Vlastnosti na získanie informácií zo súboru vlastností
Ak chcete získať informácie zo súboru vlastností, najprv vytvorte súbor vlastností.
db.vlastnostiuser=system password=oracle
Teraz vytvorte triedu java na čítanie údajov zo súboru vlastností.
Test.javaimport java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ FileReader reader=new FileReader('db.properties'); Properties p=new Properties(); p.load(reader); System.out.println(p.getProperty('user')); System.out.println(p.getProperty('password')); } }
Output:system oracle
Ak teraz zmeníte hodnotu súboru vlastností, nemusíte znova kompilovať triedu java. To znamená, že žiadne problémy s údržbou.
Príklad triedy Vlastnosti na získanie všetkých vlastností systému
Metódou System.getProperties() môžeme získať všetky vlastnosti systému. Vytvorme triedu, ktorá získa informácie z vlastností systému.
Test.javaimport java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=System.getProperties(); Set set=p.entrySet(); Iterator itr=set.iterator(); while(itr.hasNext()){ Map.Entry entry=(Map.Entry)itr.next(); System.out.println(entry.getKey()+' = '+entry.getValue()); } } }
Output: java.runtime.name = Java(TM) SE Runtime Environment sun.boot.library.path = C:Program FilesJavajdk1.7.0_01jrein java.vm.version = 21.1-b02 java.vm.vendor = Oracle Corporation java.vendor.url = http://java.oracle.com/ path.separator = ; java.vm.name = Java HotSpot(TM) Client VM file.encoding.pkg = sun.io user.country = US user.script = sun.java.launcher = SUN_STANDARD ...........
Príklad triedy Vlastnosti na vytvorenie súboru vlastností
Teraz napíšme kód na vytvorenie súboru vlastností.
Test.javaimport java.util.*; import java.io.*; public class Test { public static void main(String[] args)throws Exception{ Properties p=new Properties(); p.setProperty('name','Sonoo Jaiswal'); p.setProperty('email','[email protected]'); p.store(new FileWriter('info.properties'),'Javatpoint Properties Example'); } }
Pozrime sa na vygenerovaný súbor vlastností.
info.vlastnosti#Javatpoint Properties Example #Thu Oct 03 22:35:53 IST 2013 [email protected] name=Sonoo Jaiswal