diff --git a/apache-commons-configuration-intro/.gitignore b/apache-commons-configuration-intro/.gitignore new file mode 100644 index 0000000..33653da --- /dev/null +++ b/apache-commons-configuration-intro/.gitignore @@ -0,0 +1,31 @@ + +# Files +.classpath +.externalToolBuilders +.gradle +.project +.pydevproject +.settings +.sonar +*~ +*.ipr +*.iml +*.iws +*.swp +*.DS_Store +*.snap.debug +dependency-reduced-pom.xml + +# Directories +.idea/ +.run/ +.venv/ +_site/ +build/ +dist/ +docs/_build/ +gen-java/ +gen-javabean/ +gen-py/ +node_modules/ +target/ diff --git a/apache-commons-configuration-intro/README.md b/apache-commons-configuration-intro/README.md new file mode 100644 index 0000000..6729bf0 --- /dev/null +++ b/apache-commons-configuration-intro/README.md @@ -0,0 +1,4 @@ +# Overview +This project can serve as starting point for Maven and Java based projects. + +# Links diff --git a/apache-commons-configuration-intro/database.properties b/apache-commons-configuration-intro/database.properties new file mode 100644 index 0000000..950ddee --- /dev/null +++ b/apache-commons-configuration-intro/database.properties @@ -0,0 +1,5 @@ +database.host = db.acme.com +database.port = 8199 +database.user = admin +database.password = ??? +database.timeout = 60000 \ No newline at end of file diff --git a/apache-commons-configuration-intro/pom.xml b/apache-commons-configuration-intro/pom.xml new file mode 100644 index 0000000..7fb31ff --- /dev/null +++ b/apache-commons-configuration-intro/pom.xml @@ -0,0 +1,100 @@ + + + 4.0.0 + + mvn_base + description + https://swingbe.de + de.swingbe + mvn_base + 0.0.1 + jar + + + + GNU General Public License + https://www.gnu.org/licenses/gpl-3.0.txt + + + + + https://github.com/Software-Ingenieur-Begerad/sandbox-java + + + + + UTF-8 + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.10.1 + + + 11 + + + + org.apache.maven.plugins + maven-shade-plugin + 3.2.4 + + + package + + shade + + + + + + *:* + + META-INF/*.SF + META-INF/*.DSA + META-INF/*.RSA + + + + + true + + shaded + + + + + de.swingbe.mvn_base.Main + + + + + + + + + + + + + + org.apache.commons + commons-configuration2 + 2.8.0 + + + + commons-beanutils + commons-beanutils + 1.9.4 + + + diff --git a/apache-commons-configuration-intro/src/main/java/de/swingbe/mvn_base/Main.java b/apache-commons-configuration-intro/src/main/java/de/swingbe/mvn_base/Main.java new file mode 100644 index 0000000..ade6775 --- /dev/null +++ b/apache-commons-configuration-intro/src/main/java/de/swingbe/mvn_base/Main.java @@ -0,0 +1,42 @@ +package de.swingbe.mvn_base; + +import org.apache.commons.configuration2.Configuration; +import org.apache.commons.configuration2.builder.fluent.Configurations; +import org.apache.commons.configuration2.ex.ConfigurationException; + +import java.io.File; + +public class Main { + + public static void main(String[] args) { + System.out.println("Hello world!"); + Configurations configs = new Configurations(); + try { + Configuration config = configs.properties(new File("database.properties")); + + // access configuration properties + System.out.println("Access configuration properties!"); + + String dbHost = config.getString("database.host", "host"); + System.out.println("dbHost: " + dbHost); + + String falsePositive = config.getString("falsePositive", "falsePositive"); + System.out.println("falsePositive: " + falsePositive); + + int dbPort = config.getInt("database.port", 65535); + System.out.println("dbPort: " + dbPort); + + String dbUser = config.getString("database.user", "user"); + System.out.println("dbUser: " + dbUser); + + String dbPassword = config.getString("database.password", "secret"); // provide a default + System.out.println("dbPassword: " + dbPassword); + + long dbTimeout = config.getLong("database.timeout"); + System.out.println("dbTimeout: " + dbTimeout); + } catch (ConfigurationException cex) { + System.err.println("Something went wrong!"); + } + return; + } +}