logo

Properties-Klasse in Java

Der Eigenschaften Das Objekt enthält ein Schlüssel- und Wertpaar, beide als Zeichenfolge. Die Klasse java.util.Properties ist die Unterklasse von Hashtable.

Es kann verwendet werden, um den Eigenschaftswert basierend auf dem Eigenschaftsschlüssel abzurufen. Die Properties-Klasse stellt Methoden zum Abrufen von Daten aus der Eigenschaftendatei und zum Speichern von Daten in der Eigenschaftendatei bereit. Darüber hinaus können damit die Eigenschaften eines Systems ermittelt werden.

Ein Vorteil der Eigenschaftendatei

Eine Neukompilierung ist nicht erforderlich, wenn die Informationen aus einer Eigenschaftendatei geändert werden: Wenn Informationen in der Eigenschaftendatei geändert werden, müssen Sie die Java-Klasse nicht neu kompilieren. Es dient der Speicherung von Informationen, die häufig geändert werden müssen.

Konstruktoren der Properties-Klasse

MethodeBeschreibung
Eigenschaften()Es erstellt eine leere Eigenschaftsliste ohne Standardwerte.
Eigenschaften (Standardeinstellungen für Eigenschaften)Es erstellt eine leere Eigenschaftsliste mit den angegebenen Standardwerten.

Methoden der Properties-Klasse

Die häufig verwendeten Methoden der Properties-Klasse sind unten aufgeführt.

MethodeBeschreibung
öffentliche Leerlast (Leser r)Es lädt Daten aus dem Reader-Objekt.
öffentliche leere Last (InputStream ist)Es lädt Daten aus dem InputStream-Objekt
public void loadFromXML(InputStream in)Es wird verwendet, um alle vom XML-Dokument im angegebenen Eingabestream dargestellten Eigenschaften in diese Eigenschaftentabelle zu laden.
public String getProperty(String key)Es gibt einen Wert basierend auf dem Schlüssel zurück.
public String getProperty(String key, String defaultValue)Es sucht nach der Eigenschaft mit dem angegebenen Schlüssel.
public void setProperty(String-Schlüssel, String-Wert)Es ruft die Put-Methode von Hashtable auf.
öffentliche ungültige Liste (PrintStream out)Es wird verwendet, um die Eigenschaftenliste im angegebenen Ausgabestream auszudrucken.
öffentliche ungültige Liste (PrintWriter aus))Es wird verwendet, um die Eigenschaftenliste im angegebenen Ausgabestream auszudrucken.
öffentliche Enumeration propertyNames())Es gibt eine Aufzählung aller Schlüssel aus der Eigenschaftenliste zurück.
public Set stringPropertyNames()Es gibt eine Reihe von Schlüsseln aus der Eigenschaftenliste zurück, wobei der Schlüssel und der entsprechende Wert Zeichenfolgen sind.
public void store(Writer w, String-Kommentar)Es schreibt die Eigenschaften in das Writer-Objekt.
öffentlicher leerer Speicher (OutputStream-Betriebssystem, String-Kommentar)Es schreibt die Eigenschaften in das OutputStream-Objekt.
public void storeToXML(OutputStream os, String comment)Es schreibt die Eigenschaften in das Writer-Objekt zum Generieren eines XML-Dokuments.
public void storeToXML(Writer w, String-Kommentar, String-Kodierung)Es schreibt die Eigenschaften in das Writer-Objekt zum Generieren eines XML-Dokuments mit der angegebenen Kodierung.

Beispiel einer Properties-Klasse zum Abrufen von Informationen aus der Eigenschaftendatei

Um Informationen aus der Eigenschaftendatei zu erhalten, erstellen Sie zunächst die Eigenschaftendatei.

db.properties
 user=system password=oracle 

Erstellen wir nun die Java-Klasse, um die Daten aus der Eigenschaftendatei zu lesen.

Linkliste in Java
Test.java
 import 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 

Wenn Sie nun den Wert der Eigenschaftendatei ändern, müssen Sie die Java-Klasse nicht neu kompilieren. Das bedeutet, dass es keine Wartungsprobleme gibt.


Beispiel einer Properties-Klasse zum Abrufen aller Systemeigenschaften

Mit der Methode System.getProperties() können wir alle Eigenschaften des Systems abrufen. Erstellen wir die Klasse, die Informationen aus den Systemeigenschaften erhält.

Test.java
 import 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 ........... 

Beispiel einer Properties-Klasse zum Erstellen der Eigenschaftendatei

Schreiben wir nun den Code zum Erstellen der Eigenschaftendatei.

Test.java
 import 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'); } } 

Sehen wir uns die generierte Eigenschaftendatei an.

info.properties
 #Javatpoint Properties Example #Thu Oct 03 22:35:53 IST 2013 [email protected] name=Sonoo Jaiswal