Datenbankzugriffe ?

Joob

Top Contributor
Hallo
ich versuche gerade einige Basisklassen für eine Anwendung zu programmieren.
Login, Suche, Sperren, Transformen usw.

Bisher kenne ich den Zugriff auf eine lokale Datenbank
und bei einem Hoster mit php, hab ich mal im Rahmen einer App gelernt (android studio)

Also zur Frage:
Was gibt es noch an wichtigen Konzepten um auf Datenbanken zuzugreifen ?
Ich möchte das vereinheitlichen, ohne dabei wichtige Konzepte außer Acht zu lassen.
Also es geht nicht um exotisches sondern um die wichtigsten.
 

JuKu

Top Contributor
Ich fasse deine Frage mal zusammen:
Du möchtest Abstraktion zu einem System hinzufügen, welches du selbst nicht gut genug kennst.
Das wird extrem schwierig, denn wenn du alle Use Cases abdeckst, die man brauchen könnte, dann kannst du deine Abstraktion wegschmeißen. Abstraktion hat man meist einen Zweck, z.B. in deinem Fall vermutlich Vereinfachung der Api oder soweit weg zu abstrahieren, dass man die Implementierung austauschen kann, Stichwort Plattform-Unabhängigkeit.

Welche Datenbank willst du denn überhaupt unterstützen? Es gibt so viele DBMS Systeme...
Die erste Unterteilung wäre zwischen RDBMS (Relational Database Management System) und NoSQL Datenbanken.
NoSQL Datenbanken wirst du so aber vermutlich nicht erfassen können.
Ich vermute du willst auf MySQL hinaus? Dafür gibt es bereits eine Abstraktion, die nennt sich JDBC Treiber.
 

mrBrown

Super-Moderator
Mitarbeiter
Die erste Unterteilung wäre zwischen RDBMS (Relational Database Management System) und NoSQL Datenbanken.
NoSQL Datenbanken wirst du so aber vermutlich nicht erfassen können.
Ich vermute du willst auf MySQL hinaus? Dafür gibt es bereits eine Abstraktion, die nennt sich JDBC Treiber.
Oder eine Ebene höher mit z.B. Repository oder DTO-Pattern, damit ist auch NoSQL kein Problem
 

Joob

Top Contributor
Erst mal schönen Dank für die Gedanken die ihr euch gemacht habt.

Gut das Ihr es erwähnt, ich möchte nur SQL Datenbanken betrachten.
Grund für meine Frage ist folgender:
Ich kenne den direkten Datenbankzugriff per jdbc,
und den über einen Hoster welcher nur den indirekten Zugriff per PHP zulässt.

Ich wollte einfach nur wissen gibt, es auf dieser Ebene noch andere Zugriffskonzepte.
Ich hab halt nicht so viel Erfahrung und will da lieber nachfragen.

Ziel ist es aus der APP heraus, über eine Klasse, mit immer der gleichen Notation, die
Datenbank, welche vielleicht beim Hoster liegt oder lokal oder im Netzwerk, über eine
angepasste Klasse, abzufragen und dann, eine Datenstruktur (Array, Liste ...) zurückzuerhalten.
 

mrBrown

Super-Moderator
Mitarbeiter
über einen Hoster welcher nur den indirekten Zugriff per PHP zulässt
Das bedeutet was?

Ziel ist es aus der APP heraus, über eine Klasse, mit immer der gleichen Notation, die
Datenbank, welche vielleicht beim Hoster liegt oder lokal oder im Netzwerk, über eine
angepasste Klasse, abzufragen und dann, eine Datenstruktur (Array, Liste ...) zurückzuerhalten.

z.B. Repository oder DTO-Pattern
;)
 

Thallius

Top Contributor
Ich wollte einfach nur wissen gibt, es auf dieser Ebene noch andere Zugriffskonzepte.
Ich hab halt nicht so viel Erfahrung und will da lieber nachfragen.

Ich kann nur empfehlen immer über einen Webservice zu gehen. Ob der jetzt in PHP oder Python, Node oder wenn es ganz schlimm kommt meinetwegen auch in Spring geschrieben ist, ist dabei nebensächlich. Fakt ist, wenn Du übers Netz direkt mit jdbc auf eine Datenbank zugreifst und der Netz-Betreiber auch nur ein wenig was auf Sicherheit hält, dann wird bei direkten Zugriffen dir jede vernünftig konfigurierte Firewall so richtig schön einen Strich durch die Rechnung machen, da jedes gesendete und empfangene Datenpaket erstmal auf Viren und andere schädiche Dinge überprüft wird. Hast Du dann eventuell noch eine VPN Verbindung über mehrere Proxies mit mehreren Firewalls bleibt am Ende eine Performance das du die Bits mitzählen kannst.

Gruß

Claus
 

JuKu

Top Contributor

mrBrown

Super-Moderator
Mitarbeiter
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Datenbankzugriffe, mehr Tabellen Datenbankprogrammierung 12

Ähnliche Java Themen

Neue Themen


Oben