Développement web Java EE, par où commencer et de quelles compétences ai-je besoin? [fermé]


Je veux apprendre, au moins à un niveau de base, comment construire des applications Web Java (provenant d'un arrière-plan.NET). Je voudrais pouvoir construire, déployer une application de type CMS simple à partir de zéro.

Que dois-je apprendre exactement?

Tomcat semble être un bon serveur Web pour Java.

Quelles sont les options pour le web? Je sais qu'il y a Hibernate pour un ORM.

Java a-t-il MVC? Qu'en est-il de JSP? MVC et JSP peuvent-ils être ensemble? NetBeans?

Peut-être un livre qui couvre tout cela?

Author: BalusC, 2009-12-24

9 answers

(Mise À Jour Sep 2018)

Que dois-je apprendre exactement?

Je suppose que vous êtes déjà familier avec les technologies côté client comme HTML, CSS et JS, donc je n'irai pas en détail avec ça. Je suppose également que vous êtes déjà familier avec Java de base. Suivez Oracle Les tutoriels Java et si possible, allez chercher un OCA book ou un cours également.

Alors vous pouvez commencer par JSP / Servlet pour apprendre les concepts de base du développement web Java. De bons tutoriels peuvent être trouvés dans Oracle Java EE 5 tutorial part II chapters 3-8 et à Coreservlets.com (Débutant-Intermédiaire et Avancé, également JDBC ). Notez que depuis Java EE 6, JSP est supprimé du tutoriel Java EE en faveur de JSF et que JSP n'a fondamentalement pas changé depuis lors. C'est pourquoi vous pouvez utiliser en toute sécurité le didacticiel Java EE 5 assez ancien pour cela. Le plus important la chose en ce qui concerne JSP est le fait que l'écriture de code Java simple dans les fichiers JSP en utilisant <% scriptlets %> est officiellement déconseillée depuis 2003. Voir aussi Comment éviter le code Java dans les fichiers JSP? Donc, tous les tutoriels qui couvrent encore les scriptlets doivent être ignorés car ils vous emmèneront certainement dans une spirale descendante d'apprentissage de mauvaises pratiques.

Nous avons aussi agréable pages wiki à propos de JSP, les Servlets, JSTL et EL, où vous pouvez apprendre l' essentiels et trouver des liens plus utiles.


Tomcat semble être un bon serveur web pour Java.

C'est le cas. Il est cependant limité dans les capacités. C'est essentiellement un conteneur de servlet barebones, implémentant uniquement les parties JSP/Servlet de l'énorme API Java EE. Si jamais vous voulez aller EJB ou JPA, vous souhaitez choisir un autre, par exemple WildFly, TomEE, Payara, la Liberté, WebLogic, etc. Sinon vous avez pour utiliser Spring au lieu de Java EE. Il est à savoir impossible d'installer EJB dans un conteneur de servlet barebones sans modifier le moteur de base, vous auriez dans le cas de Tomcat fondamentalement réinventer TomEE. Voir aussi Qu'est-ce que Java EE?


Je sais qu'il y a Hibernate pour un ORM.

Auparavant, pendant l'ère J2EE, lorsque JPA n'existait pas et que EJB2 était terrible, Hibernate était un framework autonome et souvent utilisé en combinaison avec Spring to supplanter EJB. Depuis l'introduction de JPA dans Java EE 5 (2006), Hibernate est devenu une implémentation JPA. Vous pouvez apprendre JPA àJava EE tutorial part VIII . En outre, EJB3 a été beaucoup amélioré sur la base des leçons apprises du printemps. Voir aussi Quand est-il nécessaire ou pratique d'utiliser Spring ou EJB3 ou tous ensemble?


Java a-t-il MVC? Qu'en JSP? MVC et JSP peuvent-ils être ensemble? JavaBeans?

Vous pouvez, mais c'est beaucoup de réinvention de la roue quand il s'agit de lier le modèle avec la vue (conversion, validation, modification des auditeurs, etc). Le framework MVC de Java EE est appeléJSF . Avant Java EE 6, il fonctionnait sur JSP, qui est une technologie de vue assez héritée. JSP est remplacé par Facelets. Vous pouvez apprendre JSF àJava EE tutorial part III chapters 7 - 17 . Vous pouvez d'ailleurs également utiliser JSF sur Tomcat, il vous suffit de l'installer séparément. Les instructions d'installation peuvent être trouvées à la page d'accueil Mojarra. WildFly, TomEE, Payara, Liberty, WebLogic, etc. comme étant une implémentation complète de Java EE fournissent déjà JSF (et CDI, BV, JSONP, JAX-RS, EJB, JPA, etc.), vous n'avez donc pas besoin de l'installer séparément. Voir aussi Comment installer et configurer correctement les bibliothèques JSF via Maven?


Peut-être un livre qui couvre tout cela?

Il y a plusieurs livres. Je voudrais recommander de commencer par un livre axé sur Java EE en général , un livre plus axé sur JSF , et un livre plus axé sur JPA . Assurez-vous de choisir le livre le plus récent couvrant le sujet. Donc pas un vieux livre pour Java EE 5 ou JSF 1.0 ou plus.

Enfin et surtout, veuillez ignorer les sites de grattage d'extraits de code maintenus par des amateurs qui se concentrent principalement sur les revenus publicitaires plutôt que sur l'enseignement, tels que roseindia, tutorialspoint, javabeat, journaldev, javatpoint, codejava, etc. Ils sont facilement reconnaissables par des liens/bannières publicitaires dérangeants et des extraits de code JSP contenant scriptlets.

Voir aussi:

 239
Author: BalusC, 2018-09-29 14:54:54

Que dois-je apprendre exactement?

Minimalement,

  • Java le langage
  • Java l'API, y compris JDBC pour l'accès à la base de données
  • UnE , ou un éditeur de texte + Ant
  • Java EE, essentiellement, servlets et JSP
  • Un conteneur de servlet (tel que Tomcat)

Tomcat semble être un bon serveur Web pour Java.

C'est "décent". Si vous n'êtes pas dans les EJB, vous n'aurez probablement pas besoin d'apprendre autre chose. Glassfish 3 semble assez cool ces derniers temps, mais je n'ai pas joué avec encore beaucoup. Notez que c'est" plus " qu'un serveur Web. C'est un conteneur de servlet (ce qui signifie qu'il peut exécuter des applications en utilisant la technologie de servlet).

Quelles sont les options pour le web?

Environ un zillion de cadres différents. Vraiment, en choisir un est vraiment "difficile". Il est très tentant de les essayer tous, mais finalement irréalisable.

Je sais qu'il y a hibernate pour un ORM.

Je suis un peu anti-ORM, mais Hibernate est ce dont vous avez besoin si vous avez besoin d'un ORM "complet". Vous pouvez également essayer des ORM "partiels", tels que le support JDBC de Spring ou iBatis.

Java a-t-il MVC? qu'en JSP? MVC et JSP peuvent-ils être ensemble? les haricots?

Oui, la plupart des frameworks Web Java font MVC. MVC de Spring est sympa, mais je ne peux rien recommander d'autre (surtout, pas Struts 1!). JSP est juste un moteur de modèle HTML (ou XML). JSP à l'ancienne, avec du code Java intégré n'est pas cool; JSP moderne avec des fichiers de balises et les bibliothèques est très bonne.

Je suppose que la plupart des frameworks vous permettront d'utiliser JSP pour rendre votre Vs; MVC et Struts de Spring le font. Certains vous permettront également d'utiliser autre chose (Velocity, Freemarker, etc.).

Haricots est juste une convention pour les objets. Fondamentalement, cela signifie que vous utilisez des getters et des setters (ou certaines alternatives) et que vous suivez certaines règles. Ceux-ci devraient permettre à votre objet d'être manipulé par certains outils. L'exemple typique est une interface graphique, certains outils vous permettront de créer une interface graphique composants pour éditer des beans arbitraires (c'est-à-dire qu'ils rendront un formulaire pour éditer ses champs).

 25
Author: alex, 2009-12-24 16:13:53

Vous avez besoin de HTML, CSS et JavaScript - tous les suspects habituels pour le développement Web.

Tomcat a un serveur Web intégré, maisc'est un moteur servlet/JSP . Apache est le serveur web pur.

Vous devez apprendre JSP, qui est un langage de modèle pour générer des servlets qui génèrent une sortie HTML. Vous voudrez les écrire en utilisant JSTL, pas des scriptlets.

Si vous faites des applications CRUD, vous aurez besoin d'apprendre JDBC et bases de données relationnelles. Vous devriez faire cela avant d'essayer Hibernate ou tout autre ORM, car c'est la base sur laquelle ils sont construits.

Les JavaBeans ne sont que des standards pour les objets Java.

Si vous êtes partant, je recommanderais le framework Spring.

 14
Author: duffymo, 2011-05-15 00:01:27

Java a-t-il MVC?

Java a différents frameworks comme Jambe de force 2, Printemps MVC

Qu'en est-il de JSP?

JSP est une bibliothèque de modèles. Il existe peu d'alternatives que vous pouvez essayer comme FreeMarker et Velocity. AFAIK Freemarker est une bibliothèque de modèles émergente. Il est plus léger que JSP. Vérifiez ceci FreeMarker: Une alternative ouverte à JSP - JavaWorld

MVC et JSP peuvent-ils être ensemble?

Je prends MVC comme framework mentionné précédemment. Tous les frameworks prennent en charge JSP, mais vous devez vérifier la prise en charge des autres bibliothèques de modèles dans la documentation des frameworks respectifs. AFAIK Struts2 to a un très bon support pour Freemarker.

Haricots?

Je ne sais pas grand-chose. Mais en utilisant des beans, nous pouvons directement mapper des données de formulaire à des bases de données.

Peut-être un livre ça couvre tout ça?

Chaque cadre a son propre livre. Pour Struts2 - Struts 2 en Action

String MVC - Jetez un oeil à ces questions recommandant des livres pour Spring et Spring MVC. Suggestion de livre pour Spring framework et Spring Books: Lequel choisir

Fremarker, a une très bonne documentation - FreeMarker Manuel

Pour commencer le développement web dans Java -

Texte alternatif http://ecx.images-amazon.com/images/I/5140T7T6WJL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

Http://www.amazon.com/SCWCD-Exam-Study-Kit-Certification/dp/1930110596

 11
Author: Xinus, 2018-01-24 10:07:37

Je considère que la plupart des options de développement Web Java traditionnelles sont assez lourdes, et il existe de bonnes alternatives:

  • Play est un framework MVC qui vise à être léger, simple et à permettre un développement rapide - tout en restant fidèle à Java pur, par opposition à un langage JVM plus dynamique. C'est assez nouveau mais déjà impressionnant, et une bonne communauté s'est rapidement constituée autour de lui.

  • Graal est un MVC framework, inspiré par Ruby on Rails, qui est écrit et utilise Groovy, un langage de script basé sur Java. Grails est mature, robuste et largement respecté, avec une communauté forte. Groovy est essentiellement un sur-ensemble de Java, avec une meilleure syntaxe et quelques fonctionnalités intéressantes telles que les fermetures, donc l'apprendre est un excellent moyen d'apprendre Java.

  • Si vous avez besoin/voulez construire des sites Web/services / applications RESTful, Restlet est un cadre fantastique - je suis un grand fan. C'est simple, direct, et pourtant flexible. Grande communauté aussi.

  • Le moteur d'application de Google est également une option intéressante. Il est hébergé, ce qui peut être intéressant ou non, mais il a une API assez simple et un bon SDK.

Je suis sûr qu'il y en a d'autres, mais ce sont ceux auxquels je peux penser du haut de ma tête.

Bonne chance et amusez-vous!

 4
Author: Avi Flax, 2009-12-24 19:29:28

Je suis une programmation PHP/C et j'ai trouvé que groovy me permettait de sauter dans Java sans apprendre toutes les classes et paradigmes inhérents à la programmation java. Groovy m'a permis d'être productif rapidement, tout en prenant le temps d'en apprendre davantage sur java et tous les outils/frameworks/bibliothèques disponibles.

 3
Author: mr-sk, 2009-12-24 15:57:59

Si vous n'avez pas l'habitude de travailler avec html, css, xml, javascript, etc..

EssayezVaadin framework, il est bien documenté, facile à apprendre et permet de créer une interface utilisateur attrayante de manière simple. (il suffit d'écrire du code Java, bien sûr, vous avez besoin d'un serveur de servlet, Tomcat ou Jetty ira bien)

 3
Author: mokrzu, 2011-08-01 19:00:46

Mieux vaut apprendre java.Ensuite, vous apprenez Servlets et JSP.Ensuite, allez pour MVC vous allez à Struts ou Spring ou tout autre framework compatible java/java.

 2
Author: SIVAKUMAR.J, 2012-08-28 13:16:49

Puisque vous êtes nouveau sur Java, je vous recommande fortement d'apprendre le langage de base en premier. Cela vous aidera quelle que soit la technologie dans laquelle vous choisissez de faire votre application Web.

Une bonne ressource en ligne est le tutoriel Java Sun - http://java.sun.com/docs/books/tutorial/

 0
Author: Thorbjørn Ravn Andersen, 2009-12-24 16:34:07