Que faut-il apprendre pour créer des applications Web Java en Java EE 6? [fermé]

mon but est de faire des applications web!

j'ai fini de lire les livres" Headfirst - Java "et"Headfirst - Servlets and JSP".

parce que ce sujet (applications web) est si grand et compliqué, je voudrais demander ce que je devrais apprendre ensuite. Je me sens débordé quand je lis des mots clés comme Java EE, EJB, JSF, JPA, Glassfish ... mais je n'abandonnerai pas.

est-ce que quelqu'un peut me dire comment je dois procéder avec l'apprentissage? Si je prends un livre comme celui-ci: début plate-forme Java EE 6 avec GlassFish 3: du débutant au professionnel ou devrais-je juste faire quelques tutoriels en ligne?

Merci!

102
demandé sur Will 2009-12-25 05:18:17

7 réponses

même si je sais que cela va être controversé, mon conseil serait de commencer avec Java EE 6 seulement. Ainsi, grab GlasshFish v3 et soit obtenir le livre débutant plateforme Java EE 6 avec GlassFish 3: de Novice à professionnel ou de suivre le Java EE 6 tutoriel . À mon avis, Le livre (que j'ai commencé à lire pour savoir de quoi je parle) fournit plus de conseils qui pourraient être préférables si "tout" est nouveau pour vous (il couvre la plate-forme Java EE et ses API et l'environnement pour construire, déployer vos applications).

maintenant, comme je l'ai dit, je peux déjà entendre des voix dire des choses comme " Java EE est lourd, utilisez le printemps à la place, apprendre Struts ou Wicket ou des rayures pour la couche de présentation, apprendre Hibernate pour la persistance, ou pas parce que je n'aime pas ORM, utiliser iBatis ou JDBC droite à la place (vous verrez, il fait frais avec le printemps, Le printemps est si cooool), et utiliser Tomcat (et pourquoi pas Jetty), ou JBoss, ou tout simplement oublier tout ça et aller pour Grails, et bla bla bla..." .

mais je ne pense pas que cela vous aide vraiment et, sans le mentorat ou l'orientation (et vous ne trouverez pas une ressource unique non périmée couvrant toutes les combinaisons), cela doit sembler très déroutant pour un débutant.

donc, parce que je pense que Java EE 6 est une grande amélioration par rapport aux versions précédentes de Java EE, parce qu'il fournit vraiment nice API standard pour tous vos besoins (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1.0, CDI, etc), parce que ces API sont toutes plus que décentes, parce qu'il n'y a rien de vraiment mal à les apprendre, parce que c'est déjà une grande tâche, parce que vous devez commencer quelque part , je me concentrerais sur Java EE 6 seulement et oublier les autres cadres pour le moment. Plus précisément, je commencerais par le Java EE 6 Web Profile (et puis ajouter des choses si vous voulez aller plus loin).

en faisant cela, 1) vous allez commencer et vous allez apprendre des choses tout à fait nouvelles et 2) vous allez donner un peu de temps à tous les autres cadres et/ou outils pour s'adapter et prouver qu'il ya encore un besoin pour eux. Et s'il y en a, il sera encore temps d'expérimenter les survivants et vous pourrez mieux comprendre pourquoi ils existent.

170
répondu Pascal Thivent 2009-12-25 04:46:12

Mes conseils 1 est pour arrêter la lecture de livres et de commencer à mettre en œuvre des trucs. D'après mon expérience, l'apprentissage d'un livre est un mauvais substitut aux connaissances que l'on obtient en faisant des choses.


1 - Contexte: c'est un conseil pour quelqu'un qui vient de finir de lire deux livres sur le sujet.

27
répondu Stephen C 2015-07-21 21:52:02

Java EE 6 est vraiment incroyable. Le seul problème est qu'il Date d'environ 2 semaines, et il n'y a qu'un seul récipient qui offre actuellement ses caractéristiques: du poisson de verre.

je n'ai rien contre Glassfish, je l'utilise tous sur la place, plusieurs instances de production, j'aime le produit et le projet.

cela dit, les détails de Java EE 6 ne se traduisent pas en Java EE 5. Certains font, beaucoup font, mais le profil Web, Servlet 3.0, les nouveaux types de haricots, JPA 2, etc. Ceux-là ne sont pas là.

donc, en apprenant Java EE 6 d'abord, vous vous limitez simplement à un seul conteneur. D'autres arrivent, mais ils ne sont pas encore là.

Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo, etc. tous fonctionnent bien avec la spécification Java EE 5 (au moins les parties de la spécification qu'ils supportent, Tomcat n'a pas EJB par exemple).

je ne peux pas penser à quelque chose en Java EE 5, qui n'était pas reporté sur Java EE 6. Java EE 6 a rendu certains aspects très anciens optionnels, et ceux que vous ne seriez tout simplement pas apprendre aujourd'hui de toute façon. Java EE 6 a rendu certaines choses Java EE 5 encore plus faciles (packaging notamment, EJB Lite Par exemple).

Apprendre Java EE 5 maintenant de sorte que vous pouvez réellement appliquer ce que vous apprenez dans une variété d'environnements, plutôt que D'apprendre Java EE 6 maintenant et découvrir que vous ne pouvez pas être en mesure d'utiliser beaucoup de ce que vous apprenez.

aucun Livre n'enseignera vous ce que vous devez savoir. Les Servlets, par exemple, sont une belle fondation, mais pour quelque chose de plus grand que quelques pages ou endpoint, vous voudrez utiliser l'un des nombreux cadres de tiers, ou JSF, et aucun livre couvre le noyau et puis un cadre sur le dessus de cela.

le tutoriel Java EE 5 est bon pour démystifier les fondations, mon principal problème est qu'elles ne vous montrent pas le code source. Ils s'attendent plutôt à ce que vous le téléchargiez et que vous l'utilisiez. Il n'est pas discuté dans les tutoriel. J'ai trouvé les premiers livres de la tête assez bons.

pour la programmation web, les Servlets raw sont suffisamment importants pour comprendre le cycle de requête/réponse, mais vous n'avez pas besoin d'une compréhension approfondie pour faire un saut vers un cadre tiers.

je suis un grand fan de rayures pour un cadre D'Action (vs un cadre de composant), et le livre de rayures simple disponible est excellent (ce qui rend le choix d'un tel un choix facile).

Je ne peux pas suggérez un livre de cadre de Composant, et je ne recommanderais pas en fait un tout de suite. Les cadres de composants enfouissent vraiment les structures de requête/réponse HTTP core. Ils les enterrent pour une raison, et ils gagnent de la valeur en les enterrant, mais je crois que pour être efficace, vous devez avoir une bonne compréhension de ces concepts dès le début. C'est pourquoi je ne suggère pas d'apprendre d'abord un cadre de composants.

le JAX-RS REST framework, inclus dans Java EE 6, mais facilement installable dans Java EE 5 ou n'importe quel container servlet, est excellent. C'est sans doute ce que Servlet 3.0 aurait dû être. Mais je ne connais aucun livre pour ça.

8
répondu Will Hartung 2013-01-20 10:30:05

Pour Tomcat, lire le manuel sur le site web. C'est très bon. En particulier, les premiers chapitres sur l'organisation et le déploiement des applications web et les chapitres sur L'API Servlets et les JSPs.

Pour le Printemps, les effectifs livre du Printemps dans l'Action est très bon. De même pour Hibernate (le Manning book) mais je pense Hibernate est principalement en dehors de la portée des webapps. Votre appel.

Guichet - Manning livre aussi. Mais vraiment, il suffit d'écrire votre frontal code en Javascript. Ce sera moins douloureux, IMO.

4
répondu danben 2009-12-25 03:24:40

Je ne commenterai pas sur d'autres technologies mais si vous voulez apprendre L'hibernation obtenir "hibernation facile" par Cameron McKenzie(www.hiberbook.com). Ça vaut chaque centime. Vous pouvez finir de lire ce livre en 2 jours(littéralement). c'est comme un roman et à la fin vous vous retrouvez face à hibernation comme un Semi-Pro.

2
répondu motiver 2010-11-11 04:39:15

Jpassion fournit de bonnes vidéos et du matériel pour apprendre Java EE 6 et d'autres choses.

vous devriez aussi voir des exemples d'applications:

  1. Petstore . Nécessite Maven, Verrier recommandé. Écrit par Antonio Goncalves qui a écrit Le mentionné Livre .
  2. JBoss Ticketmonster . Nécessite Maven & Jboss Forge . Déploiement à Jboss.
2
répondu jacktrades 2013-05-05 09:57:27

si vous voulez simplement créer des applications Web en Java, consultez le Play Framework . Il est similaire à "Ruby on Rails"

1
répondu Apeirogon Prime 2012-09-28 07:14:02