Zum Inhalt springen

ksg9-sebastian

Mitglieder
  • Gesamte Inhalte

    176
  • Benutzer seit

  • Letzter Besuch

  1. Dafür gibt es Hunderte von Möglichkeiten. Die bekanntesten sind wohl: - Produkt durchsucht ein Verzeichnis nach Plugins, z.B. im JAR-Format und erzeugt diese (per Reflection) - Plugins werden in einer (XML-)Datei des Produkts registriert - Produkt bietet einen Pluginmanager welcher es erlaubt Plugins zu installieren Du musst unterscheiden zwischen Abhängigkeiten zur Compilezeit (Buildpath) und Abhängigkeiten zur Laufzeit. Mit einem normalen Java SDK/JRE (kein OSGi) gibt es zur Laufzeit keine Definitionen von Abhängigkeiten. Zur Laufzeit sind auch keine Produkte oder Projekte bekannt. Da gibt es nur einen Classpath. Alles was in dem Classpath ist kann referenziert werden. Der Grund warum eine IDE meckert ist logisch: Wenn A von B abhängt und B von A dann kann nicht gebaut werden denn: -Um A zu kompilieren werden die Class-Dateien von B benötigt -Um B zu kompilieren werden die Class-Dateien von A benötigt Und da wäre der Kreis wieder Es macht auch keinen Sinn dass das Produkt seine Plugins kennt, sonst wären es ja keine Plugins. Dadurch hättest du die Abhängigkeit ja so gebaut das für ein neues Plugin jedesmal eine Änderung im Produkt notwendig wäre.
  2. Sorry, aber wenn ich das lese stellen sich mir die Nackenhaare auf. Nach 6 Wochen stellst du fest das die Projekte nichts für dich sind? Hast du im Vorstellungsgespräch geschlafen? Oder hast du mit dem Personalchef über das schöne Wetter vom letzten Sonntag gesprochen? Aufgabengebiete sollten Teil des Gesprächs sein - und im Zweifel ist es deine Aufgabe sowas zu erfragen. Ich geh doch nicht zu einem Arbeitgeber und hab keinen blassen Schimmer was der wie macht. Du musst öfters mal von 9-19Uhr arbeiten? Gut, gewöhn dich gleich mal dran, so ist das in der Branche. Sei lieber froh dass du soviel Arbeit hast dass du 10Stunden arbeiten darfst. Andere wären froh wenn sie 30 Stunden pro Woche arbeiten dürften. Du arbeitest ab und zu zu Hause weiter? Schön, ich arbeite ca. 50-60 Stunden pro Woche im Büro und weitere 15 Stunden von zu Hause. Und wenn du mit den Leuten in der Firma so gut reden kannst: Warum sprichst du dann nicht über deine Aufgaben? Vielleicht könnte man da ja was ändern? Und in der Probezeit Urlaub zu wollen um für die neue Firme etwas vorzubereiten - wow, das ist der Gipfel der Unverfrorenheit. Gruß von jemand der froh ist so viel Arbeit und herausfordernde, schwierige Projekte zu haben, welche einen auch mal an die eigene Leistungsgrenze führen
  3. Und nochmal: Rechtschreibung! Zeiteinteilung ist immer so eine Sache. Aber mit 6 Stunden Anforderungsanalyse wird's meiner Meinung nach sehr eng. Zumindest kannst du dann keine 40Stunden "realisieren".
  4. ksg9-sebastian

    Garbage Collector

    Wenn die Anwendung langsam ist dann optimiert die Anwendung. Am Compiler zu spielen bringt keinen Erfolg - da wird nur am Symptom rumgedoktort, das Problem bleibt jedoch bestehen. Wir betreiben auch ne Anwendung auf ca. 120000 Clients welche ziemlich sicher deutlich größer und mächtiger ist als euer ERP-System, und das Ding läuft sehr performant ohne dass wir am GC gedreht haben. Wenn du dich in Java nicht auskennst dann lass gleich die Finger davon. Eine Analyse was langsam ist wäre auch sehr hilfreich. Mit VisualVM/JConsole findet man die Problemstellen nicht, man erkennt nur dass z.B. der Heap oder PermGen immer voll ist. Nimm mal einen Profiler und schau dir an wo es hakt.
  5. Was du brauchst wäre, wie perdian schon schrieb, einen composite-key. Alles was du dazu wissen musst steht in der verlinkten Hibernate-Doku.
  6. Du musst die java-exe sozusagen aus dem Package-Root ausrufen. Verzeichnisstruktur: D: -> Test -> build -> classes -> de -> test -> MeineKlasse Aufruf d: cd Test\build\classes java de.test.MeineKlasse de.test.MeineKlasse wird dann "umgewandelt" und der Aufruf findet in de/test/MeineKlasse statt. Trotzdem sind die Punkte wichtig. Mit "/" o.ä. funktioniert es nicht (!). Wenn -cp oder -classpath verwendet wird dann wird der Wert der Umgebungsvariable CLASSPATH nicht (!) verwendet. Bei der Verwendung von -jar wird der "User-Classpath" ebenfalls ignoriert (!). Die sinnvollste Lösung ist wohl den Classpath innerhalb der MANIFEST-Datei denes Jar-Files zu referenzieren. Struktur: 1. mein-jar-mit-main.jar 2. lib/tools1.jar 3. lib/tools2.jar Manifest wäre dann Mainclass.... Class-Path: lib/tools1.jar lib/tools2.jar "Root" ist immer der Ort an dem die Jar liegt welche aufgerufen wird. Gruß Sebastian
  7. Variante 1: char[] str = myString.toCharArray(); char[] newStr = new char[str.length]; int count = 0; for(int i=arr.length-1; i>=0; i--){ newStr[count++] = str[i]; } oder für die ganz faulen: // myString ist der String den du umdrehen willst char[] strReverse = (char[]) Collections.reverse(Arrays.asList(myString.toCharArray())).toArray(new Character[strArray.length]); Variante 2 tut so: - String in char-Array umwandeln (Arrays.asList()) - Liste umdrehen (Collections.reverse()) - Liste in Array umwandeln (.toArray())
  8. ksg9-sebastian

    Wertübergabe

    Foren sind für allgemeine Diskussionen und spezifische Probleme. Foren sind nicht dazu da um allgemeine Informationen tausendfach zu duplizierern. Zudem gibt es auch hier im Forum viele Themen zum MVC-Pattern.
  9. ksg9-sebastian

    Wertübergabe

    Hast du das erste Jahr in der Schule net aufgepasst oder ist der Lehrer Schuld dass du es net verstehst? Ist bestimmt ein ganz fauler Lehrer der einem nix beibringen kann, und die Zeit ist ja eh so knapp, oder? Und "die Aufgabe" will sicher net dass du einfach irgendwie mehrer Klassen machst. Dort geht es wohl eher um sinnvolle Trennung von GUI, Daten und Logik. Und das nennt sich MVC und ergibt sicher 1000000 Treffer bei Google bei denen alle erklärt wird..
  10. Mit Derby (Apache Derby) oder HSQLDB kann man eigentlich net viel falsch machen. Library mit ausliefern, korrekt konfigurieren und das tut. Die "Datenbank-Datei" kannst du auch irgendwo im Filesystem ablegen. Wie genau die Konfiguration und Integration in Java tut steht in diversesten sehr guten Tutorials.
  11. Es kommt mir langsam vor wie ein Fluch.. Uls unsereins angefangen hat Java zu programmieren hieß es erstmal 1-3 Jahre Grundlagen pauken (Syntax, Packages, Objektorientierung, Design Patterns, Analyse & Design, UML u.s.w.). Wir haben tausende von Mini-Anwendungen gebaut welche nur per Eingeaufforderung aufgebaut haben. Irgendwann mal gings mit UI los - genauso: Grundlagen, Grundlagen, Grundlagen. Und iiirgendwann kamen auch mal Datenbanken. Mittlerweile hat sich das irgendwie geändert: Zuerst baut man ne Anwendung mit Datenbankanbindung (möglichst noch Hibernate, damit es auch sicher nicht funktioniert), minimum Swing-GUI, eher aber JEE - z.B: JSF. Was natürlich nicht fehlen darf ist Spring, die Wunderwaffe schlechthin. Weil das aber noch nicht reicht werden noch diverseste Frameworks reingebaut welche man mal gehört hat...Ajax ist auch immer dabei - super. Und dann kommt die große Verwunderung: Es tut nicht - oh Wunder. Leider kann niemand den Fehler finden weil der Code aussieht (und meist auch so entstanden ist) als hätte man alles nur wahrlos zusammekopiert, leider aber keine Ahnung vom Programmieren. Meine Lehrer und Ausbildungsverantwortlichen hätten mir damals den Kopf abgerissen wenn ich ne Anwendung vorgelegt hätte mit einer Klasse welche 2000 Lines of Code hat, darin verbaut auch noch GUI, Model, Controller und selbstverständlich noch Datenbankanbindung. Kurzum: Lern erstmal die Grundlagen. Und bitte kein "Aber unser Lehrer ist so schlecht und wir haben keine Zeit". Das ist die wohl blödeste Ausrede überhaupt... Bring erstmal Struktur in die Anwendung. Lager die Datenbank-Logik aus. Bau entsprechende Objekte und befülle die aus der Datenbank. Und nein, ein 2dimensionales Objekt-Array ist NICHT ziel der Objektorientierung. Und dann ließ dir viele Tutorials zur JTabel und nem eigenen TabelModel durch. Und dann kopier noch viel Code irgendwoher, frag noch 200x warum dein Programm nicht geht und DANN stellst du irgendwann fest dass du Grundlagen lernen solltest!
  12. Offensive Anti-Rechtsschreibung? Ich blick nimmer was du willst und war nicht funktioniert. Wenn du per SQL auf "null" prüfen willst musst du in aller Regel so Abfragen: select * from tabelle where feld is null Viele Datenbanken mögen es nicht wenn man Strings mit = abfrägt, deshalb select * from tabelle where feld like 'text'; Auch auf das einzelne Hochkammata achten!
  13. Ok, nochmal: Dieser Code: if (jTextFieldVorname.getText() == null && jTextFieldName.getText() == jTextFieldName.getText()) { String data[][] = myBox.queryAccess("SELECT * FROM KlientTab WHERE (Name = '" + jTextFieldName.getText() + "')"); //------------FELDAUSGABE---------------------- jTextFieldName.setText(data[0][0]); jTextFieldVorname.setText(data[0][1]); jTextFieldGebDat.setText(data[0][2]); jTextFieldAlter.setText(data[0][3]); jTextFieldAdresse.setText(data[0][4]); jTextFieldHaus.setText(data[0][5]); jTextFieldHandy.setText(data[0][6]); jTextPaneNotitz.setText(data[0][7]); jTextAreaStatus.setText("Datensatz gefunden"); } wird nie ausgeführt, weil jTextField.getText() == jTextField.getText() immer false liefert! Mach das draus: if (jTextFieldVorname.getText() == null){ ... } und es geht..
  14. Schreibst du den Code eigentlich selbst oder kopierst du das zusammen? Hast du ne Ahnung von dem was du da tust? Alleine schon die If-Bedingung: f (jTextFieldVorname.getText() == null && [b]jTextFieldName.getText() == jTextFieldName.getText()[/b]) Mal abgesehen davon dass die Abfrage quark ist vergleicht man Strings mit "equals" und nicht mit "==". Mit "==" machst du nen Referenzenvergleich - was in dem Fall falsch ist. JTextComponent#getText() holt den Text anhand der Methode getDocument()#getText(start, end) - und die Methode liefert jedesmal ein neues String-Objekt zurück. Und somit liefert die Bedingung immer false. Und, mal davon abgesehen, hat die Abfrage null Sinn. Was willst du damit prüfen? Ob zwischen dem ersten Aufruf von getText() und dem zweiten Aufruf von getText() der Benutzer etwas geändert hat? Falls du das denkst dann solltest du mit Datenbankprogrammierung aufhören und nochmal gaaaaaanz von vorne anfange. So, dann weiter: 1) Glaskugel ist in Reparatur, deshalb kann ich dir nicht sagen warum keine Daten ankommen 2) Was ist myBox ? 3) Was macht die Methode "myBox#queryAccess" ? 4) Warum kommt als Ergebnis ein 2-dimensionales StringArray? 5) Was passiert wenn du den SQL-Befehl in MS Access direkt ausführst? (MS Access starten -> Datenbank öffnen -> Abfragen -> Neue Abfrage -> Das Fenster wegklicken -> Ansicht/SQL-Ansicht auswählen) 6) Was genau willst du eigentlich machen? Eingegeben wird Vorname + Nachname, und was willst du nun haben? Alle Sätze bei denen a) vorname = Eingabe Vorname und nachname = Eingabe Nachname ??
  15. Wenn du die Möglichkeit hast den SCJP zu machen dann auf geht's! Schaden tut es sicherlich nicht. Allerdings sind die Inhalte teilweise sehr fragwürdig, manche Teile sind aber auch ganz schön heftig. Grade Multithreading wird unter Umständen sehr gestresst und da gibts schon ordentliche Aufgaben. Ich hab den SCJP auch gemacht, aber nur weil ich jetzt dann den SCJD mache und evtl., soferns irgendwie passt, den Enterprise Architect. Aber nur der SCJP wird dir glaub keinen allzugroßen Bonus bei der Jobsuche verschaffen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...