Die intelliJ Entwicklungsumgebung ist ein extrem komfortables Werkzeug. Speziell für mich als älteres Semester (aua!). Und ich habe noch lange nicht alles darin genutzt.
Auf der anderen Seite kann ich mich noch an die C-Entwicklungsumgebungen von Borland auf dem PC erinnern die wir anfangs der 90iger Jahre für die C-Schulungen benutzt haben. Turbo C und später Borland C++. Letzteren haben Gero Streng und ich benutzt, um die Software zum Ausdrucken von Etiketten zu erstellen. Im Prinzip waren die von der Kernfunktion sehr ähnlich wie die IntelliJ Umgebung. Man schreibt Code in einem Editor, übersetzt (compiliert) ihn (in ein ausführbares Artefakt) und startet ihn dann. Alles aus der einen Oberfläche heraus. Und das ganze zu einem erschwinglichen Preis.
Zugegebenermaßen ist der Prozess ein lauffähiges Artefakt auf einem PC zu erstellen, etwas unterkomplex im Vergleich zu dem Build-Prozess um ein lauffähiges Artefakt für einen tomcat unter Linux zu produzieren. Für diesen Prozess gibt es spezialisierte Systeme – Build-Tools wie maven - und die stecken auch in den modernen IDEs drin. Aber wie kam es dazu dass ich mich damit beschäftigt habe?
Es war angekündigt, und doch wollte ich es nicht wirklich wahr haben. ergast.com hat Ende 2024 den Support der F1 DB eingestellt.
Ich musste mir was anderes überlegen. Ich musste die Daten in insgesamt 6 Tabellen weiter pflegen - und die DBen sind voll normalisiert !
Ausgehend von der results DB konnten alle anderen per Software aktualisiert werden. Aber die results DB musste befüllt werden (mit allen foreign keys).
Zuerst baute ich mir eine JSP in der einiges aus der DB vorbelegt war (z.Bsp. DriverID und ConstructorID) und die dann per Servlet die DBen aktualisiert.
Das war schon ok, aber doch eine zienlich umständliche Tipperei. Deswegen habe ich es dann einige Rennen schleifen lassen.
Gegen Ende der Saison wurde das Updaten virulent - es waren 8 oder 9 Rennen einzutippen. In Excel waren die Rohdaten (ohne DB interne Keys und Ids) schnell
zusammenkopiert.
Nun wollte ich die Daten aus dem Excel einlesen lassen und dann die bestehende Mimik zum aktualisieren der results.db und der davon abhängigen weitern nutzen.
Vor einiger Zeit habe ich mit einer Library gearbeitet die csv lesen und schreiben kan, aber das wollte ich nicht mehr. ChatGPT schlug eine Linrary von apache vor,
die direkt mit excel Dateien arbeitet. Diese Library gab es aber nicht mehr so einfach als jar File - das war mein bisheriger Weg um
externe Libraries zu benutzen. Es gab auf die Schnelle nur ein om.xmlp File. Und damit fing es halt an. Hinterher ist man(n) schlauer und stellt fest, dass man sich einiges an Zeit
und Nerven hätte sparen können.
Alles weitere habe ich in einem kurzen Dokument zusamnengeschreiben - Link anbei ...