Java JSP, JSF und Servlet - wo ist der Unterschied?

Cospieler

Cadet 1st Year
Registriert
Mai 2015
Beiträge
14
Halle zusammen,

Kann mir bitte mal einer zu JSP, JSF und Servlet die Unterschiede genauer erleutern?
Ich habe zwar viel im Internet gelesen aber bin jetzt sowas von verwirt, das ich mal Klarheit brauch.

Und in was soll ich am besten programmieren???
Um es auf einem Ubuntu Webserver laufen zu lassen mit Tomcat 8, stelle ich mir jedenfals vor.

Gruß Cospieler
 
Den Vorschlag unterstütze ich. Bloß nicht mit JSPs oder gar nackten Servlets rumhantieren. Für Minimalstprojekte sind JSPs ok, sonst bäh…
 
Danke für die Antworten.

Aber diese Internetseiten war ich schon und auch noch viele andere.
Aber viele reden sich auch rein und raus was es Betrifft in welchen Code man es schreiben sollte sprich JSP oder JSF?
Ich kann mich einfach nicht entscheiden.
Kann mir einer mal Pro und Kontra dazu sagen???

Will nur erstmal nur einfache kleine Projekte Programmieren, wie zum beispiel ein Taschenrechner oder andere Dinge, mir geht es erstmal nur darum um mich einer Sache einzuarbeiten.
Sprich einer von den drein: JSP, JSF und Servlet
Nur muss vorher wissen wofür welches am besten geeignet ist und ob es Sinn macht es überhaubt auch zu lernen?

Wecher Code ist jetzt auch aktuell und wird es auch erstmal bleiben???

Das meine ich damit man ist vor lauter imput, überrannt das man sich noch nicht mal für einen Code entscheiden kann.
Weil man nicht weiß was Sinn macht.

Brauche einfach mal eine aktuelle Auskunft. Als wie mache Foremseiten die Inhalte haben die schon 5Jahre alt sind.

Wollte schon den auf den aktuellen Stand lernen, nicht auf Uralten kram aufbauen und nicht erst später merken das ich das nicht brauchen kann.
 
Für die genannten Beispiele rate ich dir zu Javascript, vielleicht mit AngularJS oder zumindest jQuery. Für einen Taschenrechner brauchst du keinerlei serverseitige Logik. Solltest du doch in die Verlegenheit kommen, irgendwas serverseitiges zu brauchen, dann schnappst du dir Spring Boot und baust REST-Controller, die du per AJAX ansprichst. JSP ist tot und Servlets schreibt man auch seltenst händisch.
 
In der Java Welt würde ich jetzt wohl eher auf Thymeleaf mit Spring setzen.
Zu den genannte JSP und Servlet sollten nicht mehr verwendet werden. In einem gewissen Rahmen wurden JSPs auch auf Deprecated gesetzt.
JSF ist eine mögliche alternative, benötigt im ursprünglich gedachten Anwendungsfall einen Application Server was die Sache für einen Anfänger erschwert.
 
Danke für die Antworten.

Also vorab schon mal gesagt.
Ich habe vor einen eigenen Web-Server aufzubauen um meinen Scripte Serverseitig zu testen und eventuell auch später in Internet zu setzen.
Der Taschenrechner war nur mal nur so eine Idee um zu sehen was man so mit Scripts anstellen kann und rein aus lernzwecken.

Wenn ich das so höre werde ich dann wahrscheinlich in JSF programmieren.

Thymeleaf und Spring kenn ich überhaupt noch nicht.

wollte Java in Eclips programmieren.
 
Noch viel zu lernen du hast, junger Padawan!

Wenn du mit Java im Web arbeiten willst, gibt's im Grunde nur 3 Möglichkeiten:
1. Du schreibst komplett eigene Servlets. Da kann man zwar schnell ein HelloWorld schreiben, aber alles darüber hinaus wird dich Jahre deines Lebens kosten.
2. Java EE. Seit Java EE 7 kann man sowas auch endlich mit 1-2 Klassen umsetzen.
3. Sonstige nicht-EE Frameworks (z.B. Spring): Neuste Technologien, (spätestens seit Spring Boot) mit 1-2 Klassen aufgesetzt, (gerade für Spring) extrem(!!) viel Dokumentation, Anleitungen, Fragen auf StackOverflow, etc. pp.

Ich würde Variante 2 oder 3 nehmen. Wenn man sich nicht mit EE (und dem Rattenschwanz - wie z.B. EJB und CDI) auseinandersetzen will, dann lieber Variante 3.

Du findest bei Spring für JEDEN Scheiß 'ne Anleitung und Beispielcode. Z.B. Spring Boot + Thymeleaf: http://blog.codeleak.pl/2014/04/how-to-spring-boot-and-thymeleaf-with-maven.html
Oder Spring Boot und JSF: http://www.beyondjava.net/blog/jsf-2-2-primefaces-5-spring-boot/

Wenn du das mit Java EE versuchst, wirst du vielleicht in 2 Wochen die erste Bean Injection laufen haben (was zwingend nötig ist für alles was mehr als HelloWorld können soll), was daran liegt, dass es immer noch ziemlich wenige Anleitungen für EE 7 gibt. In EE 6 muss man ungefähr 20x so viel Konfigurationsaufwand betreiben, damit irgendwas läuft.
 
OK, dann werde ich mich wahrscheinlich mit Spring und JSF auseinanderesetzen.

Weil allein laut deiner aussage viele Anleitungen und Beispielcode gibt.

Denn die werde ich schon brauchen um aus dem ganzen schlau raus zu werden.


Vielen dank nochmal an alle die sich zu meinem Thema geaußert haben.

Gruß Cospieler
 
Zurück
Oben