From 05cce0c38a44151bcba20ed77971983d39a0a3b5 Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Tue, 16 Oct 2018 21:19:49 +0200
Subject: [PATCH] Fixed #317 - replace mysql

---
 pom.xml                                       | 10 ++++----
 .../utils/DatabaseConfiguration.java          | 24 +++++++++++++++++++
 2 files changed, 29 insertions(+), 5 deletions(-)
 create mode 100644 src/main/java/de/deadlocker8/budgetmaster/utils/DatabaseConfiguration.java

diff --git a/pom.xml b/pom.xml
index 6a804d7e3..1c8494f0c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -85,11 +85,6 @@
             <artifactId>spring-boot-starter-data-jpa</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-        </dependency>
-
         <dependency>
             <groupId>joda-time</groupId>
             <artifactId>joda-time</artifactId>
@@ -117,6 +112,11 @@
             <artifactId>libUtils</artifactId>
             <version>1.7.4</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.h2database</groupId>
+            <artifactId>h2</artifactId>
+        </dependency>
     </dependencies>
 
     <build>
diff --git a/src/main/java/de/deadlocker8/budgetmaster/utils/DatabaseConfiguration.java b/src/main/java/de/deadlocker8/budgetmaster/utils/DatabaseConfiguration.java
new file mode 100644
index 000000000..c59eedefe
--- /dev/null
+++ b/src/main/java/de/deadlocker8/budgetmaster/utils/DatabaseConfiguration.java
@@ -0,0 +1,24 @@
+package de.deadlocker8.budgetmaster.utils;
+
+import de.tobias.utils.util.Localization;
+import de.tobias.utils.util.SystemUtils;
+import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
+
+import javax.sql.DataSource;
+import java.nio.file.Path;
+
+@Configuration
+public class DatabaseConfiguration
+{
+	@Bean
+	@Primary
+	public DataSource dataSource()
+	{
+		Path applicationSupportFolder = SystemUtils.getApplicationSupportDirectoryPath(Localization.getString("folder"));
+		String jdbcString = "jdbc:h2:/" + applicationSupportFolder.toString() + "/" + "budgetmaster;DB_CLOSE_ON_EXIT=TRUE";
+		return DataSourceBuilder.create().username("sa").password("").url(jdbcString).driverClassName("org.h2.Driver").build();
+	}
+}
-- 
GitLab