Wie habt ihr Java EE gelernt?

Kababär

Top Contributor
Hi,

seit längerer Zeit gucke ich mir mal von Zeit zu Zeit immer mal Komponenten von Java EE an. Sei es Tomaten, Wildfly, Jenkins (heute mal drüber gestolpert) und andere Dinge wie Datenbanken (dazu auch XML und JSON), Frameworks, Testing (JUnit und Selenium) an.
Mir ist klar, dass der Aufwand zu groß ist, um ein solches Konstrukt privat einzurichten, zu warten und generell zu betreiben, denn ausliefern muss man ja an der Stelle nichts.
Nur finde ich es sehr kompliziert, weil von jetzt auf gleich viele Komponenten aufeinander treffen und zusammen agieren müssen (Java, JavaScript, HTML 5, Server, Datenbanken, ...).
Und dann gibt es noch tausend andere Komponenten wie EJB, Servlets, Pages, Container, Faces, etc.
ich habe Probleme damit, mir einen überblick über die Anforderungen, den Nutzen, die Zusammenarbeit und die Realisierung dieser Komponenten zu verschaffen. (Die Menge ist einfach gigantisch.)
Wie habt ihr es geschafft bzw wie seid ihr da ran gegangen?

Lohnt sich der Aufwand, so ein Java EE System zuhause einzurichten und damit zu spielen? Auf der Arbeit sind wir natürlich auch im EE Bereich tätig. Nur will ich schon was drauf haben und vieles verstanden habe, wenn ich mal damit konfrontiert werde bzw damit anfange.
 

thecain

Top Contributor
Der Aufwand hält sich eigentlich recht im Rahmen, mit Docker etc... einfach nur noch die Applikation muss geschrieben werden.
 

stg

Top Contributor

Tomaten?

Mir ist klar, dass der Aufwand zu groß ist, um ein solches Konstrukt privat einzurichten, zu warten und generell zu betreiben

Wovon redest du da?

Und dann gibt es noch tausend andere Komponenten wie EJB, Servlets, Pages, Container, Faces, etc.
ich habe Probleme damit, mir einen überblick über die Anforderungen, den Nutzen, die Zusammenarbeit und die Realisierung dieser Komponenten zu verschaffen. (Die Menge ist einfach gigantisch.)
Wie habt ihr es geschafft bzw wie seid ihr da ran gegangen?

Ich weiß nicht, was du dir da für Horrorszenarien ausmalst, aber ein Java EE Anwendungsserver ist im Grunde auch nur ein stink normales Java Programm. Die Installation beschränkt sich auf das bloße entpacken eines zip-files. Fertig. Klar, man kann da unendlich viel konfigurieren usw, aber für den Anfang ist das alles furchtbar egal.


[QUOTE="Kababär, post: 1103136, member: 29139"
Und dann gibt es noch tausend andere Komponenten wie EJB, Servlets, Pages, Container, Faces, etc.
ich habe Probleme damit, mir einen überblick über die Anforderungen, den Nutzen, die Zusammenarbeit und die Realisierung dieser Komponenten zu verschaffen. (Die Menge ist einfach gigantisch.)
Wie habt ihr es geschafft bzw wie seid ihr da ran gegangen?[/QUOTE]

Die Lernkurve ist am Anfang sehr steil, das stimmt. Es gibt unglaublich viel ... und das beinhaltet auch einen ganzen Haufen veraltete und/oder verworfene Konzepte. Kauf die ein aktuellen Buch zum Thema und arbeite das durch. Wenn du kein Buch kaufen willst, dann kannst du auch mit dem Oracla Java EE Tutorial anfangen.
Wie immer gilt aber auch: Nicht alles auf einmal versuchen. Auf was du dich zu Beginn konzentrieren willst, das hängt von deinen eigenen Präferenzen und Anforderungen ab, aber auch davon, was du schon kannst. Einen allgemeingültig besten Einstieg gibt es nicht, so etwas ist mMn immer ganz individuell zu betrachten. Und da wissen wir zu wenig über dich.
 
Zuletzt bearbeitet von einem Moderator:

Kababär

Top Contributor
Meinte Tomcat. Auto-Korrektur meines "schlauen" Apfels. :D

Wovon redest du da?
Ich ging bislang davon aus, dass man zig Konfigurationen und Programme/Frameworks installieren muss, eventuell einen eigenen Server einrichten, etc.
Jetzt habe ich Jenkins installiert (zuerst Tomcat, da wohl Jenkins in Tomcat läuft oder laufen kann). Wenn ich es jetzt noch hinkriege, Git mit Eclipse zu verbinden, kann ich, so wie es aussieht, einfach ein Link zum Git-Projekt oder die lokale Repo angeben.

Ich weiß nicht, was du dir da für Horrorszenarien ausmalst, aber ein Java EE Anwendungsserver ist im Grunde auch nur ein stink normales Java Programm. Die Installation beschränkt sich auf das bloße entpacken eines zip-files. Fertig. Klar, man kann da unendlich viel konfigurieren usw, aber für den Anfang ist das alles furchtbar egal.
Naja, bei Wildfly war die Installation unter Ubuntu schon etwas komplizierter. Jenkins und Tomcat waren da wesentlich einfacher. Ich glaube ich lasse erstmal alles auf dem localhost laufen, da muss ich weniger konfigurieren und kann erstmal alles so lassen.

Die Lernkurve ist am Anfang sehr steil, das stimmt. Es gibt unglaublich viel ... und das beinhaltet auch einen ganzen Haufen veraltete und/oder verworfene Konzepte. Kauf die ein aktuellen Buch zum Thema und arbeite das durch. Wenn du kein Buch kaufen willst, dann kannst du auch mit dem Oracla Java EE Tutorial anfangen.
Gestern Abend habe ich mir noch ein Buch gekauft "Java-Komponenten" von Rainer Öchsle. Da werden JavaBeans, Servlets, Applets, OSGi, Komponenten und Komponentensysteme behandelt.

Wie immer gilt aber auch: Nicht alles auf einmal versuchen.
Das ist mein größtes Problem, um ehrlich zu sein. Ich habe das Gefühl, ich müsse auf einen Schlag alles lernen (JSON scheint wohl oft mit Jenkins in Verbindung gebracht zu werden[öfters in Tutorials drüber gestoplert]). Aber nachdem ich mal Jenkins und Tomcat installiert habe, sehe ich, dass die Konfiguration über die .xml Dateien einfach zu bearbeiten ist und man eine schöne GUI im Browser hat.
Ich dachte immer, man müsse das "programm-spezifisch" konfigurieren (bspw. über die Shell service starten, projekt hochladen, maven goals spezifizieren, git einbinden, repo refreshen, etc, und das alles über die Shell).

Aber was ich mich frage: Tomcat ist ein Web-Server, heißt da kann ich Web-Applikationen laufen lassen und verteilen, so dass die Klienten das Programm nicht installieren müssen, sondern bspw nach einer Authentifikation das Programm im Browser laufen lassen können.
So.. heißt das, dass ich JavaFX Projekte nicht in Tomcat verwenden kann, sondern stattdessen auf Technologien wie HTML5, CSS, JavaScript ausweichen muss (da ja alles über Web läuft)?
Falls ja, folgert daraus, dass JUnit (damit teste ich immer) überflüssig ist und Selenium die bessere Wahl wäre, weil dieser ein Web-Driver ist/hat?

Ich glaube, wenn ich ein Tutorial oder so hätte, wo ich zugucken könnte, wie jemand ein Java Projekt in Jenkins, Git und Tomcat importiert, damit ich sehe, wie die Frameworks miteinander arbeiten, würde ich nicht so dämliche Fragen stellen. Mir fehlt einfach noch Wissen über den Workflow :/

Edit:
Es gibt unglaublich viel ... und das beinhaltet auch einen ganzen Haufen veraltete und/oder verworfene Konzepte.
Ja. REST scheint wohl aktuell zu sein und Java Single Pages (früher hat man mehrere Pages genommen oder so?).
 
Zuletzt bearbeitet:

stg

Top Contributor
Weder Selenium, noch Git, noch Jenkins, noch Eclipse, noch maven, noch JUnit haben unmittelbar was mit Java EE am Hut. Du schmeißt hier einfach wirklich alles durcheinander..
Selenium ist ein FrameWork zur Browser-Steuerung. Insbesondere geeignet, um Web-GUI zu testen.
Git ist eine Versionsverwaltung.
Jenkins ist ein Build-Server
Eclipse ist eine IDE.
JUnit ist ein Framework für Unit-tests.
All das wirst du sicherlich (irgendwann einmal) verwenden wollen, wenn du Java EE Anwendungen entwickelst, es ist aber dennoch vollkommen unabhängig von all dem. All das wirst du ja sicherlich auch einsetzen, wenn du "normale" Java-Programme schreibst, oder Handy-Apps oder sonst was. Aber dennoch geht es natürlich auch komplett ohne. Jedes Thema für sich ist es wert, dass man sich darin einarbeitet. Aber wenn du das alles gleichzeitig lernen willst, dann wird das nichts geben.
Wenn du Git schon kennst, dann benutzt es genau so wie vorher auch. Da ändert sich nichts. Wenn nicht, dann mach dir klar, was du als erstes lernen willst. Ist es das Arbeiten mit einer Versionsverwaltung (und was das überhaupt ist) oder doch lieber was anderes?! Gleiches gilt für die anderen...


Gestern Abend habe ich mir noch ein Buch gekauft "Java-Komponenten" von Rainer Öchsle. Da werden JavaBeans, Servlets, Applets, OSGi, Komponenten und Komponentensysteme behandelt.

Ich kenne das Buch nicht, aber wenn es Applets behandelt, dann stammt es wohl aus einem vorherigen Jahrtausend.

Aber was ich mich frage: Tomcat ist ein Web-Server, heißt da kann ich Web-Applikationen laufen lassen und verteilen, so dass die Klienten das Programm nicht installieren müssen, sondern bspw nach einer Authentifikation das Programm im Browser laufen lassen können.
So.. heißt das, dass ich JavaFX Projekte nicht in Tomcat verwenden kann, sondern stattdessen auf Technologien wie HTML5, CSS, JavaScript ausweichen muss (da ja alles über Web läuft)?
Die Programme laufen nicht beim Client im Browser, sondern zentral auf dem Anwendungsserver. Deiner Aussage entnehme ich, dass dir das Konzept "Web-Anwendung" gar nicht wirklich klar ist. Bevor du dich an die Entwicklung solcher Anwendungen wagst sollten Grundlagen über Web-Protokolle, Aufbau von HTTP requests, HTML, CSS, JS usw auf jeden Fall sitzen.
Tomcat ist auch kein Java EE Anwendungsserver und auch kein reiner Web Server, sondern (in erster Linie) ein Servlet-Container.

Falls ja, folgert daraus, dass JUnit (damit teste ich immer) überflüssig ist und Selenium die bessere Wahl wäre, weil dieser ein Web-Driver ist/hat?
Nein, das folgt natürlich nicht. Das sind zwei vollkommen verschiedene Frameworks mit vollkommen verschiedenen Aufgaben.


Ja. REST scheint wohl aktuell zu sein und Java Single Pages (früher hat man mehrere Pages genommen oder so?).
Ganz allgemein beinhaltet Java EE einen ganzen Haufen an Spezifikationen zu WebServices. Da gehören natürlich auch REST Web Services mit dazu.
Was Java Single Pages sein sollen, weiß ich nicht. Den Begriff hab ich noch nie gehört. Vielleicht meinst du JSP. Das steht aber für Java Server Pages und ist seit vielen Jahren bereits von Oracle als deprecated eingestuft.
 

Kababär

Top Contributor
Ohwei, da habe ich wirklich alles durcheinander gehauen.
Ok, ich muss mir erstmal die Grundlagen aneignen für HTTP, CSS, JS (da gibt es auch JSNode habe ich gelesen).

Und vor allem muss ich mir mal aneignen, mit was ich es dann jeweils zu tun habe. Also was Frameworks, Web-Server, Builder, etc sind.Vielleicht wird mir das dann auch mal klarer :)

Ich traue mich gar nicht mehr irgendwas zu schreiben ohne es vorher gegoogelt zu haben :D Ist ja schon etwas peinlich.

JUnit ist ein Framework für Unit-tests.
Mit JUnit kann ich aber auch Integration-Tests machen, oder?
Edit: ok kann ich mir selbst beantworten.

Vielleicht meinst du JSP.
Genau das hab ich gemeint.

Ich danke dir für deine etlichen Bemühungen und Erklärungen :)

Ich kenne das Buch nicht, aber wenn es Applets behandelt, dann stammt es wohl aus einem vorherigen Jahrtausend.
Schade. Das Buch war relativ teuer, aber naja. Dann werde ich mir ein anderes kaufen :)
 

thecain

Top Contributor
auf seinem Kanal hats auch noch einige andere Videos zu JEE, einige mehr fortgeschritten, einige weniger.

Ich würde versuchen beim Start nur weniges zu verwenden. Heisst:
- Einfacher Server. Wildfly Glassfish o.ä. Tomcat ist für JEE ungeeignet, da es nur ein Servlet Container ist.
- Maven
- Wenn du willst JUnit, ist aber nicht JEE spezifisch.
Danach kannst du starten. JEE Tutorials gibts dann im Internet zu Hauf. Für die ersten Schritte würde ich auf ein Buch verzichten.
 

Kababär

Top Contributor
Danke, das Video werde ich mir mal angucken!

Einfacher Server. Wildfly Glassfish o.ä. Tomcat ist für JEE ungeeignet, da es nur ein Servlet Container ist.
Ehrlich gesagt finde ich diese Server-Sache sehr kompliziert.

Oh ja.. dringender Punkt. Wenn es darum geht, Maven zu konfigurieren für ein Projekt, bin ich aufgeschmissen. Ich kann höchstens dependencies hinzufügen und weiß in etwas grob, wie der Lifecycle aussieht und was bei clean und install passiert.
Wenn es darum geht, dass ich Goals angeben soll oder alles via Shell machen soll, zerstöre ich eigentlich nur das Projekt :D

Wenn du willst JUnit, ist aber nicht JEE spezifisch.
Ich denke damit fange ich an. Hab gelesen, dass man beim Maven Build bzw. beim Kompilieren auch die ganzen Tests durchlaufen kann, was an sich ja schon praktisch ist.
 

thecain

Top Contributor
Ehrlich gesagt finde ich diese Server-Sache sehr kompliziert.
du darfst es einfach nicht wie einen "Server" wie es das Wort an sich sagt verstehen. Eigentlich ist ein Server nur eine Applikation, welche auf deinem Computer oder einem anderen läuft. Das einzige, was dann zum starten noch nötig ist, ist dein war, welches beim Build entsteht, in das richtige deployment verzeichnis zu kopieren. Der Rest ist mit den aktuellen Applicationservern eigentlich schon "Ready to use" vorkonfiguriert.

Was viele auch empfehlen, ist den Server in einem Dockercontainer zu betreiben, das bedeutet dann aber noch ein neues Tool, das du lernen musst, von daher würde ich erstmal alles lokal installieren.
 

Meniskusschaden

Top Contributor
Ich kenne das Buch nicht, aber wenn es Applets behandelt, dann stammt es wohl aus einem vorherigen Jahrtausend.
Schade. Das Buch war relativ teuer, aber naja. Dann werde ich mir ein anderes kaufen :)
Der Autor erwähnt selbst, dass Applets praktisch keine Bedeutung mehr haben und dass er das Kapitel deshalb knapp hält (es sind nur sieben Seiten). Meines Erachtens geht es in dem Buch darum, grundsätzliche Eigenschaften und Prinzipien von Java-Komponentensystemen heraus zu arbeiten. Dazu benutzt er eben ein paar Beispiele. Für den Zweck scheint mir die Aktualität nicht besonders wichtig zu sein. Es ist offenbar nicht die Zielsetzung des Buches, soweit in ein konkretes Produkt einzuführen, dass man es praktisch einsetzen kann, sondern nur zur Veranschaulichung des eigentlichen Themas.
Ich glaube nicht, dass das Buch gut für dein Thema geeignet ist, aber es ist sicher nicht veraltet. Ausserdem sind zumindest die beiden ersten Kapitel über Generics und Reflections noch so allgemein gehalten, dass Sie für jeden Java-Programmierer interessant sind, der sich noch nicht damit beschäftigt hat.
 

Kababär

Top Contributor
Hmmm... ich glaube jetzt verstehe ich dann auch mal erst was Java EE eigentlich ist.
Das Buch habe ich noch nicht durchgelesen, aber die Themen sahen vielversprechend aus. Bei anderen Büchern, die ich so fand, klang es von den Themen her so, als ob die mein Level übersteigen.
Und wenn du sagst, der author spricht generell über das Thema, ist das ja perfekt für mich (so als überblick?).
Denn ich hab ja gerade noch kein Verständnis dafür, wie die Komponenten und die Container zusammenarbeiten.
(Zudem fand ich es ganz nett, dass er generics und Reflections behandelt, womit ich eigentlich noch nix am Hut hatte.
Kann man sagen, dass Java EE quasi so was wie ein Vertrag ist, wie Applikationen aufgebaut sein müssen (3 Tier bzw. Schichtenmodell?), so dass ich quasi nicht nur Java, sondern auch Perl, C oder Ruby auf den Server lassen kann und integrieren kann?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Java ServerFaces Anwendung mit XHTML & CSS Allgemeines EE 1
E modulare Java-Anwendung verteilen (Camel) Allgemeines EE 0
B Java Mail und idle() mit zig Emailadressen? Allgemeines EE 59
H JWebUnit Fehler: java.lang.NoClassDefFoundError: org/apache/regexp/RESyntaxException Allgemeines EE 24
B Java mail API - möchte nur eine gewisse Anzahl von Emails in die Liste holen Allgemeines EE 3
M Rest mit Java 11 Allgemeines EE 6
M java.lang.SecurityException: class "javax.persistence.TupleElement"'s signer information does not match ... Allgemeines EE 1
F Java Programmierer Allgemeines EE 13
R Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert? Allgemeines EE 5
Dimax JSP Probleme mit Java in JSP Allgemeines EE 21
Dimax JSP Auf button click java methode ausführen.Ist das möglich? Allgemeines EE 6
B Logging (log4j) in JAVA EE application - WildFly Allgemeines EE 15
A Java EE (am Cleint) und websocket Allgemeines EE 8
J Ich kann Java JDK nicht downloaden Allgemeines EE 6
R Aufbau zum Java EE Entwickler - Schulungen Allgemeines EE 0
G Java EE Hosting ? Allgemeines EE 6
P Java EE Videotutorials Allgemeines EE 1
R Java Enterpise entwickeln mit Virtualbox Allgemeines EE 6
A OutOfMemoryError: Java heap space Allgemeines EE 7
I Start Word from Java Allgemeines EE 1
T Java Jersey Interceptor Allgemeines EE 7
R Post Variable in Java Allgemeines EE 8
L JSP Fehlermeldung bei Verwendung von Java-Expression-Language Allgemeines EE 8
hjpsoft JSF Lösung einer Aufgabe im "Workshop Java EE7" Allgemeines EE 5
S Welcher Java EE Applikationserver für RESTful Webservice? Allgemeines EE 2
T Java Login Allgemeines EE 1
L Certified Master Java Enterprise Architect Java EE Allgemeines EE 3
R Java EE 6, eclipse, maven, jsf, hibernate, mysql Allgemeines EE 8
D Einfaches Java Projekt funktioniert nicht Allgemeines EE 3
W Authentifizierung und Sessions in Java EE7 Allgemeines EE 0
OnDemand Task in Java ee Allgemeines EE 7
OnDemand JSF - java File Verständnisfrage Allgemeines EE 5
OnDemand Deployen ohne .java Files Allgemeines EE 0
E Wie kann ich über einen Suchfeld in Java Server Pages nach Datenbankinhalten suchen? Allgemeines EE 11
V Java EE 7 CDI, annotations und beans Allgemeines EE 1
G Bachelorthesis: Java oder PHP (CMS) Allgemeines EE 7
X Konsolenausgabe einer java klasse in eine jsp umleiten Allgemeines EE 7
S Aufruf eines EJBs aus einer nativen Java-Applikation Allgemeines EE 1
T Fertiges html javascrip css template in java EE application Allgemeines EE 0
F Eclipse/Java EE Debug-Problem Allgemeines EE 1
D Java Projekt goes Webservice Allgemeines EE 6
L Button Handling in JSP mit Java-Backend Allgemeines EE 2
Shams Frage zu Dowload von JAVA SDK Allgemeines EE 5
T Größeres Java EE Beispiel Projekt Allgemeines EE 4
N JavaScript schickt und Java empfängt? Allgemeines EE 4
O Java EE in Netbeans + allgemeine Fragen Allgemeines EE 5
H java selenium spezis? Allgemeines EE 4
H java selenium test connection refused Allgemeines EE 6
M Java EE-Technologie-Lern-Wahl Allgemeines EE 5
B [EJB] javax.inject.DefinitionException: bean not a Java type Allgemeines EE 5
J Java Dependencies auslesen Allgemeines EE 19
2 installation java EE Allgemeines EE 12
J PHP oder Java? Allgemeines EE 12
L Webseiten Formulare über Java Oberfläche ausfüllen? Allgemeines EE 2
T Java CMS Entwicklung : Welcher Weg ist besser? Allgemeines EE 9
F Gesucht: Gratis Server für Java Entwickler Allgemeines EE 4
J Einstieg in Java EE Allgemeines EE 5
aze Eclipse Java EE Web Project:Wo liegen die Servlets ? Allgemeines EE 4
S java Entities Problem Allgemeines EE 19
D Grundüberlegung Java Webprojekt Allgemeines EE 10
F Einstieg in Java EE - Beispielanwendungen Allgemeines EE 52
R JAVA EE - eigene Klassen aus EJB übernehmen Allgemeines EE 2
T "normales" Java Programm auf einen Server laufen lassen Allgemeines EE 3
M EE6+EJB+JavaLib: Error in annotation processing: java.lang.NoClassDefFoundError Allgemeines EE 4
G java ResourceLocator Allgemeines EE 12
M Was ist mit Java möglich? Allgemeines EE 13
T Komponenten zusammenhänge Java EE Allgemeines EE 7
A Java CMS Allgemeines EE 2
P Architektur Java EE <-> HTML5 Allgemeines EE 3
A Java Tomcat findet Website nicht Allgemeines EE 8
F Java EE Server nutzung kostenlos an Schule? (zB. mit Glassfish) Allgemeines EE 6
B Java EE, kickstart my heart Allgemeines EE 10
P Frage zu Java EE Design Patterns Allgemeines EE 3
G EJB und Java EE - No Persistence provider Allgemeines EE 5
zilti Java EE Hosting, worauf muss ich achten? Allgemeines EE 5
M Java EE6: Wie Login-Vorgang durchführen? Allgemeines EE 2
MQue Java Web- Application -> MVC Allgemeines EE 4
G Java <-> Flex Allgemeines EE 2
Spin Ant - Java Beans umsetzen Allgemeines EE 4
V "null" durch NICHTS ersetzen jsp und java beans Allgemeines EE 3
M Serialisierung und Klonen in Java Allgemeines EE 5
W JAVA Optionen auslesen Allgemeines EE 3
D Spring 3 vs. Java EE 6 Allgemeines EE 33
MQue CMS in Verbindung mit Java Allgemeines EE 16
X3TitanCore Java Servertechnologie Allgemeines EE 7
C WebStart Fehler nach update auf Java 1.6 Allgemeines EE 2
R Variablen statt Java-Methoden in EL's Allgemeines EE 4
T Suche Buch für: Large Scale Web-Apps | Clustering | Scaling in Java ? Allgemeines EE 4
G Vergleich zwischen Java Spirng und Ruby on Rails Allgemeines EE 9
K EJB Enterprise Java Beans Allgemeines EE 32
F Ich will mit Java Internetseiten bauen, aber wo hosten? Allgemeines EE 14
J OOP Java Array Problem Allgemeines EE 2
T Problem mit Java Transaction API Allgemeines EE 2
D Java EE vs. Spring/Hibernate Allgemeines EE 26
R Java EE Anfänger will mehr. Allgemeines EE 7
A Fragen zum Einstieg in Java EE Allgemeines EE 11
M Evolution der Web-Entwicklung im Java-Bereich Allgemeines EE 15
N erstes Java EE Projekt - Server/ EJB-Verbindung-Anfängerfage Allgemeines EE 17
G Von Java SE nach JavaEE umsteigen Allgemeines EE 31
K Java Application Server + ganttproject *.jar Anwendung Allgemeines EE 6

Ähnliche Java Themen

Neue Themen


Oben