BAEL-923 How to inject a value from properties to a class not managed by Spring? (#1878)
* adam.zawada@gmail.com - Different Types of Bean Injection in Spring * adam.zawada@gmail.com - Different Types of Bean Injection in Spring switch to Java based configuration * BAEL-895 calculate the period/duration between two dates in Java 8 * clean old PR * BAEL-923 How to inject a value from properties to a class not managed by Spring? * clean PR
This commit is contained in:
parent
e338d3eb0e
commit
e09ba8e3c2
|
@ -0,0 +1,19 @@
|
||||||
|
package com.baeldung.util;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
public class PropertiesLoader {
|
||||||
|
|
||||||
|
public static Properties loadProperties(String resourceFileName) throws IOException {
|
||||||
|
Properties configuration = new Properties();
|
||||||
|
InputStream inputStream = PropertiesLoader.class
|
||||||
|
.getClassLoader()
|
||||||
|
.getResourceAsStream(resourceFileName);
|
||||||
|
configuration.load(inputStream);
|
||||||
|
inputStream.close();
|
||||||
|
return configuration;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
package com.baeldung.util;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
|
||||||
|
public class PropertiesLoaderTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void loadProperties_whenPropertyReaded_thenSuccess() throws IOException {
|
||||||
|
//given
|
||||||
|
final String RESOURCE_FILE_NAME = "configuration.properties";
|
||||||
|
|
||||||
|
final String SAMPLE_CONF_ENTRY = "sampleConfEntry";
|
||||||
|
final String COLON_SEPARATED_CONF_ENTRY = "colonSeparatedEntry";
|
||||||
|
|
||||||
|
final String GIVEN_CONF_ENTRY_VALUE = "sample String value";
|
||||||
|
final String COLON_SEPARATED_CONF_ENTRY_VALUE = "colon separated entry value";
|
||||||
|
|
||||||
|
//when
|
||||||
|
Properties config = PropertiesLoader.loadProperties(RESOURCE_FILE_NAME);
|
||||||
|
|
||||||
|
String sampleConfEntryValue = config.getProperty(SAMPLE_CONF_ENTRY);
|
||||||
|
String colonSeparatedConfEntryValue = config.getProperty(COLON_SEPARATED_CONF_ENTRY);
|
||||||
|
|
||||||
|
//then
|
||||||
|
assertEquals(GIVEN_CONF_ENTRY_VALUE, sampleConfEntryValue);
|
||||||
|
assertEquals(COLON_SEPARATED_CONF_ENTRY_VALUE, colonSeparatedConfEntryValue);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,4 @@
|
||||||
|
# this is sample property file for PropertiesLoaderTest configuration needs
|
||||||
|
! this is also a comment
|
||||||
|
sampleConfEntry = sample String value
|
||||||
|
colonSeparatedEntry : colon separated entry value
|
Loading…
Reference in New Issue