From 9df1ad472f57adecb59768ffe7c847174c86ccc7 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 28 Apr 2025 16:31:25 +0200 Subject: split classes into separate files --- .../com/example/portfolio2/MyDb.java | 86 ++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 src/com.example.portfolio2/com/example/portfolio2/MyDb.java (limited to 'src/com.example.portfolio2/com/example/portfolio2/MyDb.java') diff --git a/src/com.example.portfolio2/com/example/portfolio2/MyDb.java b/src/com.example.portfolio2/com/example/portfolio2/MyDb.java new file mode 100644 index 0000000..f85f391 --- /dev/null +++ b/src/com.example.portfolio2/com/example/portfolio2/MyDb.java @@ -0,0 +1,86 @@ +package com.example.portfolio2; + +import java.sql.*; +import java.util.ArrayList; + +class MyDB { // MyDB is all standard Database configuration that was gotten from Mads + Connection conn = null; + + MyDB() { + if (conn == null) open(); + } + + public void open() { + try { + String url = "jdbc:sqlite:identifier.sqlite"; + conn = DriverManager.getConnection(url); + } catch (SQLException e) { + System.out.println("cannot open"); + if (conn != null) close(); + throw new RuntimeException(e); + } + ; + } + + public void close() { + try { + if (conn != null) conn.close(); + } catch (SQLException e) { + throw new RuntimeException(e); + } + conn = null; + } + public void cmd(String sql) { + if (conn == null) open(); + if (conn == null) { + System.out.println("No connection"); + return; + } + Statement stmt = null; + try { + stmt = conn.createStatement(); + stmt.executeUpdate(sql); + } catch (SQLException e) { + System.out.println("Error in statement " + sql); + throw new RuntimeException(e); + } + try { + if (stmt != null) { + stmt.close(); + } + } catch (SQLException e) { + System.out.println("Error in statement " + sql); + throw new RuntimeException(e); + } + } + + public ArrayList query(String query, String fld) { + ArrayList res = new ArrayList<>(); + if (conn == null) open(); + if (conn == null) { + System.out.println("No connection"); + throw new RuntimeException("No connection"); + } + Statement stmt = null; + try { + stmt = conn.createStatement(); + ResultSet rs = stmt.executeQuery(query); + while (rs.next()) { + String name = rs.getString(fld); + res.add(name); + } + } catch (SQLException e) { + System.out.println("Error in statement " + query + " " + fld); + throw new RuntimeException(e); + } + try { + if (stmt != null) { + stmt.close(); + } + } catch (SQLException e) { + System.out.println("Error in statement " + query + " " + fld); + throw new RuntimeException(e); + } + return res; + } +} -- cgit v1.2.3