diff --git a/WasteInformationServer.iml b/WasteInformationServer.iml
index c90834f..b77913d 100644
--- a/WasteInformationServer.iml
+++ b/WasteInformationServer.iml
@@ -7,5 +7,7 @@
+
+
\ No newline at end of file
diff --git a/lib/mysql-connector-java-5.1.44-bin.jar b/lib/mysql-connector-java-5.1.44-bin.jar
new file mode 100755
index 0000000..2f2e32d
Binary files /dev/null and b/lib/mysql-connector-java-5.1.44-bin.jar differ
diff --git a/lib/org.eclipse.paho.client.mqttv3-1.2.1.jar b/lib/org.eclipse.paho.client.mqttv3-1.2.1.jar
new file mode 100644
index 0000000..fe62073
Binary files /dev/null and b/lib/org.eclipse.paho.client.mqttv3-1.2.1.jar differ
diff --git a/src/Date.java b/src/Date.java
index cb7aa94..2638216 100644
--- a/src/Date.java
+++ b/src/Date.java
@@ -1,5 +1,3 @@
-import javafx.scene.input.DataFormat;
-
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
diff --git a/src/META-INF/MANIFEST.MF b/src/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..df98b61
--- /dev/null
+++ b/src/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Main-Class: main
+
diff --git a/src/db/Database.java b/src/db/Database.java
new file mode 100755
index 0000000..7b79229
--- /dev/null
+++ b/src/db/Database.java
@@ -0,0 +1,87 @@
+package db;
+
+import javax.swing.table.DefaultTableModel;
+import java.sql.Connection;
+import java.sql.ResultSet;
+import java.sql.ResultSetMetaData;
+import java.sql.SQLException;
+import java.util.Vector;
+
+public abstract class Database {
+
+ protected String user;
+ protected String password;
+
+ protected String host;
+ protected int port;
+
+ protected String dbName;
+
+ public Database(String user, String password, String host, int port, String dbName) {
+ this.user = user;
+ this.password = password;
+ this.host = host;
+ this.port = port;
+ this.dbName = dbName;
+ }
+
+ public abstract Connection getConnection();
+
+ public static void logToConsole(ResultSet res) {
+ try {
+
+ ResultSetMetaData rsmd = res.getMetaData();
+
+ while (res.next()) {
+ String row = "";
+
+ for (int i = 1; i <= rsmd.getColumnCount(); ++i) {
+ if (row.length() > 0) {
+ row += ", ";
+ }
+
+ if (res.getObject(i) != null) {
+ row +=
+ rsmd.getColumnName(i) +
+ ": " +
+ res.getObject(i).toString();
+ }
+ }
+
+ System.out.println(row);
+ }
+
+ } catch(SQLException e) {
+ }
+ }
+
+ public static DefaultTableModel logToTable(ResultSet res) {
+ try {
+ ResultSetMetaData rsmd = res.getMetaData();
+ Vector columnNames = new Vector<>();
+ int columnCount = rsmd.getColumnCount();
+
+ for (int i = 1; i <= columnCount; ++i) {
+ columnNames.add(rsmd.getColumnName(i));
+ }
+
+ Vector> data = new Vector<>();
+
+ while(res.next()) {
+ Vector