Input/Output Primzahlen Datenbank

SebOeh

Mitglied
Ich bin in Java ein Quereinsteiger. Zum Spaß habe ich mal eine Klasse für Bruchrechnung programmiert und darunter auch eine Methode die eine Primfaktorzerlegung aus integers macht. Wenn man es profesionell machen will, ist es besser die Primzahlen bis zu sqrt(Integer.Maxvalue) einfach einzulesen als sie immer neu zu rechnen. Es sind 4792 Werte, die man am besten am Anfang in ein static int array packt.

Nun ist meine Frage, wie macht man es in Java am besten für solche umfangreiche Daten für ein Programm. Tut man sie auch in eine Datenbank oder Library packen? Brauche ich dann auch einen Datenbankserver? Wie macht man programmiermäßig die Verbindung damit?
 
G

Gast2

Gast
Nein, nen Datenbankserver brauchst du dafür nicht. Du kannst einfach ne embedded DB nehmen, beispielsweise:
H2 Database Engine

Da gibts verschiedene Modi in denen du die Datenbank laufen lassen kannst, auf der Seite findest du eigentlich alle Infos die du brauchst um die zu nutzen.
 

AlexSpritze

Bekanntes Mitglied
Für solch einen Zweck bräuchte man nicht unbedingt gleich einen Datenbankserver. Es gibt auch SQL-Datenbanken, die embedded, also innerhalb deines Java-Projektes laufen. Zum Beispiel: Apache Derby oder H2 Database Engine (redirect) Dort gibt es auch entsprechende Tutorials, wie man die Datenbanken ins Programm einbindet, und Verbindungen öffnet und schließt.
 

tfa

Top Contributor
Für genau 4792 ints, die sich nie ändern, würd ich keine Datenbank benutzen. Einfach als int-Array in einer Klasse definieren und fertig (wie schon gesagt).
 

Final_Striker

Top Contributor
Oder in eine Text-/XML-Datei schreiben und beim Start einlesen. Eine richtige Datenbank für die Paar Werte halte ich auch für überflüssig.
 

SebOeh

Mitglied
Ja, gut, ist ja klar, aber im Quelltext einer Klasse drin ist es nicht gerade elegant. Mir ging es um die grundsätzliche Frage, wie man es heute handhabt eine (große) Menge von Daten, die ein Programm verwendet, zu speichern.
Also auch sonst in ein XML-Datei, ja?
 
V

vanny

Gast
Ja, gut, ist ja klar, aber im Quelltext einer Klasse drin ist es nicht gerade elegant...

Ich finde es weniger elegant, Werte, die sich nie ändern in ein Codefremdes Format zu speichern um es dann jedes mal wieder einzulesen.
Hier spricht nix gegen eine Klasse/Interface "PrimZahlenBunker" o.ä.

Gruß Vanny
 

JanHH

Top Contributor
"man" handhabt das Speichern einer grossen Menge von Daten in einer Datenbank mittels JPA.

Allerdings hast Du da keine große Menge an Daten.
 
Zuletzt bearbeitet:
B

bygones

Gast
Ja, gut, ist ja klar, aber im Quelltext einer Klasse drin ist es nicht gerade elegant. Mir ging es um die grundsätzliche Frage, wie man es heute handhabt eine (große) Menge von Daten, die ein Programm verwendet, zu speichern.
Also auch sonst in ein XML-Datei, ja?

du sprichst hier aber nicht von grossen Datenmengen...
 

xip

Bekanntes Mitglied
ach, wenn du fett RAM hast kannste auch alles in ne ArrayList reinpacken. Deine VM ziehste dann einfach mit:

-XX:+AggressiveHeap -XX:+AggressiveOpts

voll nach oben!!!

ist am einfachsten zu programmieren!! :)

Mache ich bei sowas auch immer so!
 

SebOeh

Mitglied
du sprichst hier aber nicht von grossen Datenmengen...

5000 Werte sind weiß Gott (also ich :D) nicht viel. Da ich dabei bin, etwas zu lernen, was ich gerne auch beruflich einsetzen möchte, würde ich gerne wissen, wie man es sonst macht, wenn man ein "richtiges" Programm schreibt.
Angenommen ich will das absolute Java-Mathe-Programm schreiben, das alles tut. Dann würde ich zB die int-Fibonacci-Zahlen oder andere Serien auch nicht jedes mal neu rechnen, sondern einfach irgendwo speichern. Die werden erst aufgerufen und eingelesen, wenn man sie braucht. So müßte das auch zB mit der sinus-Funktion sein, da Werte aus einer Tabelle zu lesen und dazwischen zu interpolieren schneller geht als irgendeine konvergente Serie auszurechnen. Oder irre ich mich da?
Aber auch wenn es kein Mathe ist, zB Astronomie, müßte ich die Daten von allen bekannten Planeten und Sonnensysteme irgendwo lagern. Deshalb will ich wissen, wie man es tut, damit ich mich auch da schon einlesen kann.
Capito? Ansonsten danke an alle.

Kurze Frage am Rande: Wie verwandelt man ein Integer-array (oder eine Integer LinkedList) in ein int-array? Gibt es da was effizienteres oder schöneres als eine Schleife?
 
Zuletzt bearbeitet:
B

bygones

Gast
das Problem ist nur, dass es keine generelle Aussage gibt, wie man das "normal" macht, da fuer untersch. Szenarien unterschiedliche Loesungen existieren und jede bei einem anderen Szenario hervorsticht oder untergeht.

Mit externer Speicherung (zb Db) kannst du enorme Mengen speichern, musst dich aber immer um den Zugriff bemuehen - im schlimmsten fall kannst du zig tausende Werte speichern, diese aber zu holen etc dauert dann so lange, dass dein Super-Mathe-Programm nicht effizient genug ist.

Die Antworten hier sind immer nur Antwort auf dein konkretes problem und da du keine grossen Mengen an daten hast, sind die richtigen Antworten gegeben.
Wenn du mal grosse Datenmengen hast und ein konkretes Szenario, so wird dir dann auch darauf eine Antwort gegeben.

Kurze Frage am Rande: Wie verwandelt man ein Integer-array (oder eine Integer LinkedList) in ein int-array? Gibt es da was effizienteres oder schöneres als eine Schleife?
mit reinem Java nicht sehr nett zu machen... Schau dir mal Colt - Welcome an, die u.a. auch primitive Collections etc haben...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
sserio Wieso werden nicht alle Primzahlen bis 1000 in meine Liste gepackt ? Java Basics - Anfänger-Themen 8
B Primzahlen bis 100 addieren Java Basics - Anfänger-Themen 16
H Primzahlen finden - Zeit optimieren Java Basics - Anfänger-Themen 34
S Primzahlen in Array ausgeben Java Basics - Anfänger-Themen 14
M Array auf Primzahlen prüfen Java Basics - Anfänger-Themen 7
D Primzahlen Rechner nach Eratostenes von Kyrene Algorithmus Java Basics - Anfänger-Themen 2
fendix Compiler-Fehler Algorithmus zur Bestimmung von Primzahlen Java Basics - Anfänger-Themen 7
P Methode die ausgibt wie viele Primzahlen es zwischen 2 und n gibt Java Basics - Anfänger-Themen 10
G Primzahlen von Rekursiv nach Iterativ Java Basics - Anfänger-Themen 6
M Rekursives Programm zum Anzeigen von Primzahlen Java Basics - Anfänger-Themen 3
P Primzahl mit Angabe der höchsten Primzahl und Angabe der Anzahl von Primzahlen bis 100 Java Basics - Anfänger-Themen 8
Java The Hutt Primzahlen - die ersten 100 Java Basics - Anfänger-Themen 17
N Erste Schritte Primzahlen-ArrayIndexOutOfBounds Java Basics - Anfänger-Themen 23
R Primzahlen Zähler Programm / Benachbarte Primzahlen Java Basics - Anfänger-Themen 30
D Klassen Primzahlen überprüfen Java Basics - Anfänger-Themen 3
I Primzahlen Java Basics - Anfänger-Themen 17
Z Rekursion Primzahlen Java Basics - Anfänger-Themen 1
M Erste Schritte primzahlen ermitteln, nur zahlen als eingabe erlauben Java Basics - Anfänger-Themen 34
S Primzahlen berechnen funktioniert nicht richtig Java Basics - Anfänger-Themen 1
R primzahlen im array Java Basics - Anfänger-Themen 33
M Primzahlen, nur jede 2te ausgeben Java Basics - Anfänger-Themen 11
T Primzahlen Fehler Java Basics - Anfänger-Themen 4
K Primzahlen Java Basics - Anfänger-Themen 6
L Primzahlen im Array ausgeben Java Basics - Anfänger-Themen 3
P Primzahlen Java Basics - Anfänger-Themen 3
A Methoden Primzahlen erstellen von 1 bis 100-Codeprobleme Java Basics - Anfänger-Themen 2
H Variablenverfolgung - Primzahlen Java Basics - Anfänger-Themen 7
G Primzahlen Java Basics - Anfänger-Themen 6
D Primzahlen und Rekursive Liste Java Basics - Anfänger-Themen 29
S Primzahlen bis 1000 ausgeben Java Basics - Anfänger-Themen 3
K Methoden Primzahlen Java Basics - Anfänger-Themen 33
F Primzahlen in Zahlenblöcken ausgeben Java Basics - Anfänger-Themen 9
M Primzahlen - es werden alle Nicht-Primzahlen ausgegeben Java Basics - Anfänger-Themen 5
M primzahlen Java Basics - Anfänger-Themen 4
S Programm zu Ermittlung von Primzahlen Java Basics - Anfänger-Themen 14
E Programm zum Primzahlen ausgeben-Fehler Java Basics - Anfänger-Themen 12
X Primzahlen Java Basics - Anfänger-Themen 7
S Primzahlen Java Basics - Anfänger-Themen 12
B Programmierobjekt - Primzahlen Java Basics - Anfänger-Themen 2
D Primzahlen ausgeben. Wo liegt der Fehler? Java Basics - Anfänger-Themen 4
N Primzahlen Java Basics - Anfänger-Themen 5
I Primzahlen check, String prüfen lassen. Java Basics - Anfänger-Themen 6
A OOP Programm zum bestimmen von Primzahlen, OutofBoundsException Java Basics - Anfänger-Themen 10
apple987123 Primzahlen Java Basics - Anfänger-Themen 12
A Primzahlen: ein paar offene Fragen Java Basics - Anfänger-Themen 2
T Primzahlen Java Basics - Anfänger-Themen 6
G Primzahlen Java Basics - Anfänger-Themen 18
B Primzahlen berechnen - Wieso unterschiedliche Java Basics - Anfänger-Themen 3
B Primzahlen Algorithmus - wo ist der Fehler ? Java Basics - Anfänger-Themen 2
E Primzahlen Java Basics - Anfänger-Themen 5
B Primzahlen mit Array errechnen! Java Basics - Anfänger-Themen 13
H Miller Rabin Test Primzahlen werden teilweise nicht gefunden Java Basics - Anfänger-Themen 5
M Wer kann mir bei Primzahlen helfen ? Java Basics - Anfänger-Themen 4
G Frage zur Primzahlen berechnung Java Basics - Anfänger-Themen 11
kulturfenster Primzahlen berechnen Java Basics - Anfänger-Themen 11
D Primzahlen Java Basics - Anfänger-Themen 4
N Zerlegung in Primzahlen Java Basics - Anfänger-Themen 7
F Programm Primzahlen Java Basics - Anfänger-Themen 5
J Primzahlen errechnen.ArrayLists abgleichen Java Basics - Anfänger-Themen 2
M Primzahlen Java Basics - Anfänger-Themen 6
C Primzahlen Java Basics - Anfänger-Themen 7
C Primzahlen Java Basics - Anfänger-Themen 2
S Primzahlen Java Basics - Anfänger-Themen 49
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
M Daten aus errechneter Methode in Datenbank(SQLite) schreiben Java Basics - Anfänger-Themen 60
S Best Practice Fragen zu Projektstruktur einer Datenbank-Abfrage-App (MVC) Java Basics - Anfänger-Themen 13
I Element n aus Datenbank Query (JPA / Hibernate) Java Basics - Anfänger-Themen 3
I Passwort in Datenbank speichern um später wieder auszulesen Java Basics - Anfänger-Themen 5
S OOP Java Eingabe in verschiedene Datenbank Tabellen eintragen Java Basics - Anfänger-Themen 7
I H2 Datenbank starten / Daten in File speichern Java Basics - Anfänger-Themen 25
E schneller von der Datenbank abfragen Java Basics - Anfänger-Themen 15
E Datenbank Spalte zusammenzählen Java Basics - Anfänger-Themen 2
R Datenbank Java Basics - Anfänger-Themen 1
I API Key´s in der Datenbank decrypt / encrypten? Java Basics - Anfänger-Themen 23
I Werte (u.a. Geldbeträge) in Datenbank speichern und Rundungen? Java Basics - Anfänger-Themen 8
M Mehrere Datenbank zugriffe über tomee.xml regeln? Java Basics - Anfänger-Themen 1
M Datenbank oder Textdatei? Java Basics - Anfänger-Themen 4
S Datenbank Befehl nach Login Java Basics - Anfänger-Themen 5
S Datenbank Tabelle eine Zeile an einer bestimmten Stelle einfügen Java Basics - Anfänger-Themen 2
M Von der Datenbank zum Textfield Java Basics - Anfänger-Themen 16
R Best Practice Logik in der Datenbank oder in Java? Java Basics - Anfänger-Themen 3
R Datenbank-Werte dynamisch ausgeben Java Basics - Anfänger-Themen 19
B Frage zu Datenbank Design - Rechnungen, Angebote... und deren Positionen Java Basics - Anfänger-Themen 4
B Datenbank: Entity mit vielen Referenzen? Ansatz so ok? Java Basics - Anfänger-Themen 8
T Datenbank | Welche am Sinnvollsten? Java Basics - Anfänger-Themen 5
S Daten speichern, ohne Datenbank Java Basics - Anfänger-Themen 8
L Daten aus ArrayList in Datenbank durchsuchen Java Basics - Anfänger-Themen 5
M Datenbank in jTable Laden Java Basics - Anfänger-Themen 49
M Datenbank verbindung Java Basics - Anfänger-Themen 19
J Java Verbindung mit mysql Datenbank Java Basics - Anfänger-Themen 3
B Datenbank, aktuelle Ende als Zahl an Label übergeben Java Basics - Anfänger-Themen 7
T Collections Geeignete Collection/Liste/Datenbank Java Basics - Anfänger-Themen 17
B Treetable (rekursive Funktion) aufbauen von Datenbank Java Basics - Anfänger-Themen 4
R Input/Output Verbindung mit mySql-Datenbank Java Basics - Anfänger-Themen 9
D Compiler-Fehler Wert auf Datenbank übertragen und Sleep Thread Java Basics - Anfänger-Themen 3
N (Java) Regristrierung und Login System mit einer Datenbank Java Basics - Anfänger-Themen 5
J Datenbank Zugriff Java Basics - Anfänger-Themen 24
J Mit JSF Formular in Datenbank schreiben Java Basics - Anfänger-Themen 3
DaCrazyJavaExpert Verschiede Aktionen der Datenbank getrennt durchführen Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben