Die ganze klasse als eigenen Thread laufen lassen

Status
Nicht offen für weitere Antworten.
M

Mican

Gast
Hallo,

Hab ein Java projekt gemacht wo die ganzen db zugriffe in einer klasse drin sind als singelton. Nun ist es ab und zu mal so das einige db anfragen viel daten laden müssen und wenn das lange dauert verschmierts die GUI da sie auf die rückgabe von der db wartet. Ist es möglich das ich ohne viel änderungen die klasse db.java als thread laufen lasse und alle funktionen die aufgerufen werden in diesem thread laufen?

danke im voraus für die antworten
 

Grizzly

Top Contributor
Da Threads eine Sache für sich sind, würde ich mal sagen: jein. Es geht auf jeden Fall, aber einfach ist es nicht.

Ich hab' im Geschäft genau das gleiche Problem. Hab' das jetzt so gelöst, das standardmäßig nur bspw. Einträge der letzten 2 Wochen angezeigt werden. Wer sich alle Einträge anzeigen lassen will (sind mindestens 3 bis 4 Jahre), ist selber Schuld. Vor allem geht das bei mir deswegen schon nicht, weil ich es in einem JTable anzeigen lass. Und dieses braucht sowieso Zugriff auf alle Daten. Dann würde es spätestens da auf die Daten warten. Bringt also in dem Fall gar nichts.

Wenn Du die Daten natürlich im Hintergrund verarbeiten willst und am Schluss nur ein Ergebnis anzeigen willst, ist ein weiterer Thread für den Datenbank Zugriff natürlich ein gute Idee. Wobei Du am Besten soviel wie möglich schon in der SQL Anfrage erledigen lassen solltest. Meist ist der Server (auf dem die Datenbank läuft) sowieso schneller als der Arbeitsplatzrechner. Und der Datendurchsatz sowie die Zugriffsgeschwindigkeit des Servers ist auch höher als vom Arbeitsplatzrechner über das Netzwerk über den Server auf die Daten.
 

Mag1c

Top Contributor
Moin,

also mal angenommen, du stößt die DB-Anfragen über die GUI an (z.B. Button). Jetzt könntest du genau an dieser Stelle einen Thread einhaken. Also Button gedrückt -> neuen Thread erzeugen und starten -> neuer Thread führt DB-Abfrage aus und stellt Ergebnis dar. Das könnte durchaus so einfach sein, wie es hier klingt. Ein bisschen Arbeit ist auf jedenfall noch angesagt, um die GUI Thread-sicher zu machen, da diese ja voll bedient werden kann, während der DB-Thread aktiv ist.

Gruß
Mag1c
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Update ganze zeile Datenbankprogrammierung 4
trash SQL, ganze Tabelle abfragen Datenbankprogrammierung 3
O Ganze DB exportieren Datenbankprogrammierung 7
Zrebna Wie mittels Hibernate eine Join-Tabelle als eigene Java-Klasse erstellen? Datenbankprogrammierung 5
S ResultSet als Parameter an andere Klasse übergeben Datenbankprogrammierung 3
I Konzept: Klasse / Entity für Einstellung der Software Datenbankprogrammierung 3
F Mapping einer SQL Abfrage in eine Klasse Datenbankprogrammierung 4
J Nur CRUD über Datenbank Klasse, oder auch mehr ? Datenbankprogrammierung 2
F Mapping SQL mit Klasse Datenbankprogrammierung 7
L MySQL Database Helper Klasse mit Consumer Datenbankprogrammierung 7
S Mithotec-Klasse Datenbankprogrammierung 6
P MySQL-Verbindung in anderer Klasse nutzen Datenbankprogrammierung 2
M Wie übergebe ich Datenbankobjekte aus einer sql-Datenbank einer Java Klasse bzw. Instanz Datenbankprogrammierung 7
I SQLite Objekt speichern einer Serialisierter Klasse Datenbankprogrammierung 1
G ArrayList aus Verschiedenen klasse füllen Datenbankprogrammierung 5
H Klasse welche Mysql Daten zurück gibt Datenbankprogrammierung 18
F JPA und Klasse "User" Datenbankprogrammierung 3
S MySQL Datenbankanbindung extra Klasse Datenbankprogrammierung 10
E MySQL Klasse zur Abfrage statisch oder Standard Datenbankprogrammierung 5
A Connection Variable in anderer Klasse verwenden -> statement Datenbankprogrammierung 2
T Klasse zum Syntaxcheck Datenbankprogrammierung 2
G Hibernate: wie @ManyToOne Referenz auf eigene Klasse? Datenbankprogrammierung 1
S Aus ResultSetMetaData Klasse dynamisch erzeugen Datenbankprogrammierung 3
P Neues Attribut in Entity-Klasse Datenbankprogrammierung 3
W XML Klasse in Datenbank speichern? Datenbankprogrammierung 5
N resultset aus andere klasse übergeben Datenbankprogrammierung 3
P Klasse in Datenbank speichern Datenbankprogrammierung 4
A DB-Klasse für häufig verwendete Aufgaben Datenbankprogrammierung 6
I Keine Treiber-Klasse! Datenbankprogrammierung 9
H Aufbau einer DB-Klasse Datenbankprogrammierung 10
J Klasse für Datensatzblättern in Verbindung mit JTable gesuch Datenbankprogrammierung 6
G gutes design für db-klasse Datenbankprogrammierung 3
N Datenbank in diese Klasse einfügen Datenbankprogrammierung 4

Ähnliche Java Themen


Oben