×

Properties Class in Java

Properties class is associated with Java since JDK 1.0, i.e. it is a legacy class. It is the subclass of Hashtable. It is used to maintain the lists of values in which the keys, as well as values, is of String type.

Property list can contain a second property list as its default and this list is searched only if the property key is not found in the main property list.

Property class is thread-safe, i.e. multiple threads can share a single properties object without any external synchronization. This is not a generic class but some of its methods are generic.

It defines the following instance variable:

Properties defaults It holds a default property list associated with the Properties object.

Properties define these constructors:

Properties() This constructor creates a Properties object with no default values.
Properties(Properties propDefault) It generates an empty property list with the specified default value.

Method of Properties Class

Modifiers Methods Description
String getProperty(String key) It returns the value associated with the specified key in the argument. It returns null if the key is neither in the list nor in the default property list.
String getProperty(String key, String defaultProperty) It returns the value associated with the specified key in the argument. defaultProperty is returned if the key is not present in the list as well as in the default property list.
void list(PrintStream streamOut) It sends the property list to the specified output stream linked to the streamOut.
  List(PrintWriter streamOut) It sends the property list to the specified output stream linked to the streamOut.
  load(InputStream streamIn throws IOException) It reads a property list (key and element pairs) from the specified input byte stream linked to streamIn.
  load(Reader streamIn throws IOException) It reads a property list from the input stream linked to streamIn.
  loadFromXML(InputStream streamIn) It loads all the property list represented by an XML document on the specified input stream.
  putAll(Map t) This method copy all of the mapping from the specified map to the hashtable.
  store(OutputStream streamOut, String description) It writes the property list of the Properties table to the specified output stream after writing the string specified by the description parameter.
  store(Writer writer, String comments) It writes the property list of the Properties table to the specified output stream after writing the string specified as comments
  storeToXML(OutputStream out, String comment) The property list is written to the XML document specified in the argument after writing the string specified as a comment.
  storeToXML(OutputStream out, String comment, String enc) The property list and the string specified in the argument is written to XML document linked in the argument.
Enumeration<?> propertyNames() It returns an enumeration of keys that includes those keys found also in the default property list.
Object setProperty(String key, String value) It calls the Hashtable method put, or returns the previous value associated with key or returns null if no associations exist.
Set<String> stringPropertyNames() It returns a set of keys that is unmodifiable, from the property list where key-value pair is the string that includes distinct key in the default property list if an identical key has not already been found from the main property list.
Collection<Object> Values() It returns a collection view of the values contained in the map.
Object merge(Object key, Object value, BiFunction remappingFunction) It associates the specified key with the specified non-null value if the specified key is not already associated with a value or null.

Example code to illustrate getProperty() method.

 import Java.util.*;
class GetProperrtyDemo
{
    public static void main(String arg[])
    {
        Properties p = new Properties();
        Set sub;
        String str;
        p.put("A", "Java");
        p.put("B", "Python");
        p.put("C", "SQL");
        // checking values in table
        sub = p.keySet();
        Iterator itr = sub.iterator();
        while(itr.hasNext())
        {
            str = (String)itr.next();
            System.out.println("Subject associated with " + str +  " is " + p.getProperty(str));
        }
        System.out.println();
        // looking for subject that is in list
        str = p.getProperty("Oracle", "not found");
        System.out.println("The Subject " + str);
    }
} 

Output:

 Subject associated with A is Java
Subject associated with C is SQL
Subject associated with B is Python
The Subject not found 

Example code to illustrating list() method.

 import Java.util.*;
class ListDemo
{
    public static void main(String arg[])
    {
        Properties p = new Properties();
        p.put("Ankit", "Java");
        p.put("Sumit", "DBMS");
        p.put("Akash", "Bash");
        p.list(System.out);
    }
} 

Output:

 -- listing properties --
Ankit=Java
Sumit=DBMS
Akash=Bash 

Exampple code to illustrate propertyNames() method.

 import Java.util.*;
class PropertyNameDemo
{
    public static void main(String arg[])
    {
        Properties p = new Properties();
        String s;
        p.put("Ankit", "Java");
        p.put("Sumit", "DBMS");
        p.put("Akash", "Bash");
        Enumeration name = p.propertyNames();
        // displaying the enumaration of elements
        System.out.println(name.nextElement());
        System.out.println(name.nextElement());
        System.out.println(name.nextElement());
    }
} 

Output:

 Ankit
Sumit
Akash 

Example code to illustrate setProperty() method.

 import Java.util.*;
class SetPropDemo
{
    public static void main(String arg[])
    {
        Properties p = new Properties();
        p.put("Amar", "Python");
        p.put("Akbar", "Java");
        p.setProperty("Anthony", "Microservices");
        System.out.println(p);
    }
} 

Output:

{Anthony=Microservices, Akbar=Java, Amar=Python}

Example to illustrate the load and Store method.

 import Java.io.*;
import Java.util.*;
class StoreLoadDemo {
public static void main(String args[])
throws IOException
{
                Properties p = new Properties();
                BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
                String name, number;
                FileInputStream fin = null;
                boolean changed = false;
// Try to open Student database.
                try {
                                                fin = new FileInputStream("D:\\StudentData.dat");
                                }
                catch(Exception e)
                {
                                e.printStackTrace();
                }
                /* If student file already exists, load existing students numbers. */
                try {
                                                if(fin != null) {
                                                                p.load(fin);
                                                                fin.close();
                                                }
                }
                catch(IOException e)
                {
                System.out.println("Error reading file.");
                }
                // Let user enter new names and numbers.
                do
                {
                System.out.println("Enter new name" +" ('quit' to stop): ");
                name = br.readLine();
                if(name.equals("quit")) continue;
                System.out.println("Enter number: ");
                number = br.readLine();
                p.put(name, number);
                changed = true;
                }
                while(!name.equals("quit"));
                // If Student data has changed, save it.
                if(changed)
                {
                FileOutputStream fout = new FileOutputStream("D:\\StudentData.dat");
                p.store(fout, "Student Database");
                fout.close();
                }
                // Look up numbers given a name.
                do {
                System.out.println("Enter name to find" +" ('quit' to quit): ");
                name = br.readLine();
                if(name.equals("quit")) continue;
                number = (String) p.get(name);
                System.out.println(number);
                }
                while(!name.equals("quit"));
 }
} 

Output:

 Enter new name ('quit' to stop):
Ankit
Enter number:
9013777664
Enter new name ('quit' to stop):
Ashish
Enter number:
1245799453
Enter new name ('quit' to stop):
quit
Enter name to find ('quit' to quit):
Ankit
9013777664
Enter name to find ('quit' to quit):
quit 

Related Topics

How to Convert String to Object in Java

How to Convert String to Object in Java The Object is the super class of all classes. So you can assign a string to Object directly. There are two methods to...

3 minutes read.

How to Return Value from Lambda Expression Java?

What is Lambda Expression in Java? In Java 8, Lambda Expressions were introduced.A lambda expression is a brief section of code that accepts input and outputs a value. Similar to methods,...

4 minutes read.

Java vs DotNET

Before understanding the differences between DotNET and Java, one must know about Java and DotNET. Java Java is a general-purpose programming language that is class-based and object-oriented, with minimal implementation dependencies. Regardless of...

9 minutes read.

Swing Program in Java

Java Swing is part of Java Foundation Classes (JFC). The swing toolkit is used to generate Graphical User Interface (GUI) for programs written in Java. The Java swing API is...

4 minutes read.

Java Boolean getBoolean() Method

The getBoolean() method of Java Boolean class returns true if the specified system property is not null and is equal to the String ‘true’, else the result returned is false. Syntax public...

1 minute read.

Thread States in Java

An Item's Life Cycle (Thread States) A thread can be in any of the states mentioned above at any given time in Java. They are as follows: New Active I'm blocked or waiting Temporary...

3 minutes read.

Set Matrix Zeros in Java

In coding round interviews, it is frequently asked as the most significant challenge. an m*n matrix is provided. Set the entire column and row of the matrix to 0 if any...

6 minutes read.

Java Boolean compare() method

The compare() method of Java Boolean class compares the specified Boolean values and returns a positive 1 or negative 1 or zero integer value based on the result. Syntax public static int...

2 minutes read.

Pancake Sorting in Java

In the pancake sorting method, the array must be sorted using just one operation, which is: Flip the arrays arr at index 0 to index j by using flipArr(arr, h). Other sorting...

3 minutes read.

Java Technologies List

Introducing Java technology is not necessary. Everyone across the globe is still in awe of Java's incredible capabilities for developing mobile apps and websites. Of course, you can be persuaded...

8 minutes read.

Inheritance Program in Java

Inheritance Program in Java Inheritance is one of the important pillars of Object-Oriented Programming that facilitates parent-child relationships in programming. Using inheritance, we can create a new class with the help...

7 minutes read.

Object class in Java

In Java, a class is a file containing the Java byte code. It can essentially specifically be executed on the JVM (Java Virtual Machine), fairly significant. The JVM mostly generally...

6 minutes read.

Ganesha’s Pattern in Java

This part teaches us how to use stars and other special characters to write Ganesha's Pattern in Java programming. Among the most challenging Java pattern applications to code. The Ganesha will be...

3 minutes read.

Method and Block Synchronization in Java

The Synchronization is performed in multi-threading concept. The multi-threading is a concept of parallel running of a program for the execution. In the multi-threading concept, the threads are run by...

3 minutes read.

Functional Interface in Java 8

A brief introduction to Interface in Java: Interfaces in Java are basically the blue print of classes. Before the appearance of Java 8, it was only possible to declare one or...

11 minutes read.

How to check Date is Greater in Java?

In this article, you will be acknowledged about how to check if the given date is greater than the other date or not. We are simply comparing the dates and...

7 minutes read.

Java Lambda foreach

Before understanding lamda foreach, one must know about foreach loop in Java. foreach loop in Java Since J2SE 5.0, there has been a for-each loop in Java, also known as an extended...

4 minutes read.

Java Program to Create Set of Pairs Using HashSet

HashSet in Java: HashSet is an assortment in Java that has a place with java.util bundle. It inside utilises HashMap to store components. It is an execution of the Set connection...

11 minutes read.

Aggregation in Java

Aggregation A "has-a" and "whole/part" connection is the best way to define the aggregate relationship in Java, which exists between two classes. This connection relationship has a higher level of specialisation....

4 minutes read.

Program to find the duplicate characters in a string

Problem statement You have given with a string and your task is to find out the repeated characters from the string and print them. If no character is repeated, then you...

2 minutes read.