logo

Клас свойства в Java

The Имоти обектът съдържа двойка ключ и стойност като низ. Класът java.util.Properties е подклас на Hashtable.

Може да се използва за получаване на стойност на свойството въз основа на ключа на свойството. Класът Properties предоставя методи за получаване на данни от файла със свойства и съхраняване на данни във файла със свойства. Освен това може да се използва за получаване на свойствата на система.

Предимство на файла със свойства

Повторно компилиране не е необходимо, ако информацията е променена от файл със свойства: Ако някаква информация е променена от файла със свойства, не е необходимо да компилирате отново Java класа. Използва се за съхраняване на информация, която трябва да се променя често.

Конструктори на клас Properties

МетодОписание
Имоти()Той създава празен списък със свойства без стойности по подразбиране.
Свойства (Свойства по подразбиране)Той създава празен списък със свойства със зададените стойности по подразбиране.

Методи на клас Properties

Често използваните методи на клас Properties са дадени по-долу.

МетодОписание
публично празно натоварване (Reader r)Той зарежда данни от обекта Reader.
публично празно натоварване (InputStream е)Той зарежда данни от обекта InputStream
public void loadFromXML(InputStream in)Използва се за зареждане на всички свойства, представени от XML документа на посочения входен поток в тази таблица със свойства.
public String getProperty (ключ за низ)Връща стойност въз основа на ключа.
public String getProperty(String key, String defaultValue)Той търси имота с посочения ключ.
public void setProperty(ключ на низ, стойност на низ)Той извиква метода put на Hashtable.
публичен невалиден списък (PrintStream out)Използва се за отпечатване на списъка със свойства към посочения изходен поток.
публичен невалиден списък (PrintWriter out))Използва се за отпечатване на списъка със свойства към посочения изходен поток.
обществено изброяване propertyNames())Той връща изброяване на всички ключове от списъка със свойства.
public Set stringPropertyNames()Той връща набор от ключове от списък със свойства, където ключът и съответната му стойност са низове.
public void store(Writer w, String comment)Той записва свойствата в записващия обект.
публично празно хранилище (OutputStream os, String коментар)Той записва свойствата в обекта OutputStream.
public void storeToXML(OutputStream os, String comment)Той записва свойствата в обекта за записване за генериране на XML документ.
public void storeToXML(Writer w, String comment, String encoding)Той записва свойствата в обекта за записване за генериране на XML документ с указаното кодиране.

Пример за клас Properties за получаване на информация от файла със свойства

За да получите информация от файла със свойства, първо създайте файла със свойства.

db.properties
 user=system password=oracle 

Сега, нека създадем 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 

Сега, ако промените стойността на файла със свойства, не е необходимо да компилирате отново Java класа. Това означава, че няма проблем с поддръжката.


Пример за клас Properties за получаване на всички свойства на системата

Чрез метода System.getProperties() можем да получим всички свойства на системата. Нека създадем класа, който получава информация от свойствата на системата.

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 ........... 

Пример за клас Properties за създаване на файл със свойства

Сега нека напишем кода за създаване на файла със свойства.

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'); } } 

Нека да видим генерирания файл със свойства.

инфо.свойства
 #Javatpoint Properties Example #Thu Oct 03 22:35:53 IST 2013 [email protected] name=Sonoo Jaiswal