Quel livre JSP sert la meilleure leçon?

Êtes-vous à la recherche du livre JavaServer Pages qui vous permettra de commencer à créer des sites Web basés sur JSP? Dans cet article, je vais examiner six des derniers livres JSP proposés. Ces livres comprennent:

  1. Pure JSP: Java Server Pages par James Goodwill ( Sams, 2000)
  2. Pages JavaServer par Larne Pekowsky ( Addison-Wesley, 2000)
  3. Pages Instant JavaServer par Paul Tremblett ( Osborne McGraw-Hill, 2000)
  4. Développement Web avec JavaServer Pages par Duane K. Fields et Mark A. Kolb ( Manning Publications, 2000)
  5. Servlets de base et pages JavaServer par Marty Hall ( Prentice Hall, 2000)
  6. Professional JSP par Dan Malks, et al. ( Wrox Press, 2000)

Le tableau 1 ci-dessous donne un bref aperçu des principales caractéristiques des livres évalués. J'irai plus en détail, en passant en revue chaque livre individuellement, plus loin dans l'article.

Tableau 1: Présentation des livres JSP
JSP pur Pages JavaServer Pages JavaServer instantanées Développement Web avec JavaServer Pages Servlets principaux et pages JavaServer JSP professionnel
Prix 4,99 9,95 9,99 4,95 2,99 9,99
Pages totales 325 300 510 560 580 900
CD-ROM / Source à partir du Web Non non Oui Non Oui oui Non Oui Non Oui Non Oui
Auteurs 1 1 1 2 1 21
Versions des servlets / JSP 2,2 / 1,1 2,2 / 1,1 2,1 / 1,0 2,2 / 1,1 2,2 / 1,1 2,2 / 1,1
JavaBeans Moyenne Moyenne Moyenne Très bon Moyenne Moyenne
JDBC Bien Bien Bien Très bon Bien* Bien
Extensions de balises Aucun Pauvres Pauvres* Très bon Bien Bien
XML Moyenne Pauvres Pauvres Pauvres Aucun Bien
J2EE Aucun Aucun Aucun Moyenne Aucun Bien
Panier Moyenne Moyenne Bien Aucun Moyenne Moyenne
Référence API Très bon Aucun Très bon Moyenne Aucun* Très bon
Serveurs Web / Bases de données Matou PostgreSQL Apache, JServ, PostgreSQL Matou Tomcat, JSWDK, serveur Web Java Apache, Tomcat
Échelle: Aucun Pauvres Moyenne Bien Très bon
Une étoile (*) dans un champ signifie que cet avis fournit des détails supplémentaires sur le classement.

Le premier groupe de lignes du tableau 1, jusqu'à Auteurs , devrait être assez explicite. Les lignes suivantes indiquent la version ou le niveau de couverture que les livres offrent pour chaque catégorie. Voici quelques points à noter:

  • L'API Servlets est passée de 1.0 à 2.0 à 2.1 et est maintenant à 2.2. L'API JSP est passée de 0.91 (et plus tôt) à 0.92 à 1.0 pour la version 1.1 actuelle. Presque tous les livres couvrent la dernière version de l'API.
  • Pour la couverture de la connectivité des pages JavaBeans-JSP, je recherchais principalement une utilisation avec jsp: useBean.
  • La couverture J2EE est en plus de la couverture des servlets, JDBC et XML.
  • La référence API montre la couverture du livre de la documentation de l'API javax.servlet.jsp(et éventuellement javax.servlet). Personnellement, je n'ai jamais eu besoin de regarder la javax.servlet.jspréférence API. Pour plus de clarté, je devrais mentionner que la référence API n'est pas la liste des objets implicites et des directives JSP. Je veux dire la documentation API sur les classes JspEngineInfoet JspFactory.
  • Quant aux serveurs Web / bases de données, il ne suffit pas de mentionner un serveur dans le livre pour être répertorié ici. Fondamentalement, des instructions sur la façon de configurer le serveur Web ou d'ajouter un fichier JSP / une application Web au serveur Web sont nécessaires et / ou sur la configuration / l'utilisation du serveur de base de données.

Avant de commencer les critiques, une chose que je dois mentionner est que je suis l'auteur d'un chapitre dans Professional JSP (Wrox Press). Compte tenu de la petite contribution que j'ai apportée à Professional JSP, je sens que je peux encore donner un aperçu objectif de ce livre et des autres. Comme ce n'est clairement pas mon livre préféré, j'espère que vous ressentirez la même chose.

Dans le reste de cet article, je passerai en revue chaque livre individuellement. À côté du titre de chaque livre se trouve une note par étoiles, qui est basée sur la couverture globale du livre des pages JavaServer. Une étoile équivaut à une mauvaise note, et la note la plus élevée (cinq étoiles) se traduit par une couverture exceptionnelle.

Pure JSP: Java Server Pages (4 étoiles)

Je trouve rarement des livres publiés par Sams que j'aime, mais je suis heureux de dire que j'ai trouvé une exception. Alors que Pure JSP: Java Server Pagespar James Goodwill est le plus petit des livres JSP, j'ai trouvé que la couverture JSP était très succinctement écrite et presque complète. Le principal composant manquant était de savoir comment créer des bibliothèques de balises personnalisées. Goodwill commence par un aperçu conceptuel de JSP et de son intégration avec les servlets, les JavaBeans et JDBC. Il comprend également des techniques pour gérer les erreurs, travailler avec les objets implicites, utiliser des actions standard, communiquer avec JavaBeans, communiquer avec une base de données via un pool de connexions, utiliser l'analyseur SAX avec XML et envoyer du courrier avec l'API JavaMail. Bien qu'aucun des chapitres ne soit étendu ou approfondi, le contenu du livre est plus que suffisant pour vous familiariser avec JSP.

Compte tenu de la petite taille du livre, j'ai été surpris de voir le dernier tiers du livre repris sur la référence API. Vous pouvez localiser le code source de Pure JSP sur le site Web de Sam (voir Ressources). Une autre note mineure: Pure JSP est le seul livre dans lequel le titre avait une mauvaise utilisation de Java Server dans JavaServer Pages.

Pages JavaServer (2 1/2 étoiles)

JavaServer Pages de Larne Pekowsky est destiné au concepteur Web au lieu du développeur Java (contrairement à Pure JSP ). Vous trouverez une introduction à la création de contenu dynamique, au langage de programmation Java et à l'écriture de JavaBeans, ainsi qu'une introduction à JDBC. Vous pouvez utiliser les JavaBeans avant d'apprendre à les créer, et vous devez extraire les fichiers source / classe du CD pour utiliser les exemples. Malheureusement, Pekowsky ne montre pas comment configurer le serveur Web ou le JDK pour créer une page JSP, compiler une classe Java ou montrer où placer la classe de bean. Une référence à la documentation sur la configuration de Tomcat se trouve sur le CD d'accompagnement, bien qu'elle soit concise. Fondamentalement, Pekowsky vous a décompressé un fichier zip mais ne vous permet pas de créer quoi que ce soit vous-même.

En découvrant toutes ces technologies, JavaServer Pages vous guide tout au long du développement d'un site Web fictif semblable à Slashdot appelé Java News Today, augmentant ainsi la quantité de contenu dynamique pris en charge. Lors du développement de Java News Today, Pekowsky ne fournit pas la couverture JSP typique d'éléments tels que les objets implicites et les directives. En fait, aucune liste d'objets implicites n'existe nulle part, et la liste des balises JSP est reléguée à une annexe.

Le reste du livre semble sauter avec différents sujets, avec beaucoup de code SQL pour configurer des tables pour les exemples. Pour les lecteurs, j'ai trouvé de nombreuses descriptions déroutantes ou insuffisantes. Si vous souhaitez utiliser JSP pour ajouter des JavaBeans à vos pages Web, ce livre vous montrera comment; sinon, je ne prendrais pas la peine de le lire pour autre chose.

Instant JavaServer Pages aborde son enseignement de JSP d'une manière entre celle de Pure JSP et JavaServer Pages. Vous obtenez une description détaillée de ce qu'est JSP et comment vous pouvez l'utiliser, suivie d'une description de la syntaxe avec tout, des directives de page aux objets implicites, aux sessions et aux pages d'erreur. Au-delà de l'introduction se trouvent huit chapitres couvrant les applications Web JSP typiques, vous enseignant les principes de base de JSP en cours de route. Ceux-ci incluent un gestionnaire de connexion, une base de données de FAQ, un annuaire téléphonique, un expéditeur de carte postale électronique et bien d'autres. Connaissant chacun de ces principes fondamentaux, vous pouvez facilement étendre un site Web existant. L'exemple XML est un peu faible; il génère simplement le XML mais n'analyse rien.

Instant JavaServer Pages comprend également des instructions d'installation détaillées pour Linux d'Apache, JServ et PostgreSQL. Cela révèle la faiblesse du livre - c'est le seul livre JSP qui décrit la spécification JSP 1.0 rapidement obsolète. Cela signifie que la description des fonctionnalités telles que les extensions de balises est préliminaire et n'utilise que la version API Servlets 2.1. Malgré cette lacune, le livre est globalement une bonne approche d'apprentissage par l'exemple de JSP.

Développement Web avec JavaServer Pages (5 étoiles)

Le développement Web avec les pages JavaServer de Manning Publications est définitivement pour le développeur Java haut de gamme. Les concepteurs Web trouveront également utile d'ignorer simplement la seconde moitié du livre. Les auteurs Duane Fields et Mark Kolb commencent par une introduction typique aux pages JavaServer, en les comparant à d'autres technologies de contenu dynamique. En outre, ils vont plus en détail avec des tâches telles que la séparation de la présentation de la mise en œuvre pour parvenir à la division du travail.

Après l'introduction, Fields et Kolb fournissent un examen approfondi de la syntaxe JSP, des beans et gestion de session aux directives, actions et objets implicites. Alors que la plupart des autres livres JSP donnent un aperçu rapide de ces éléments, le développement Web avec JavaServer Pages essaie d'être plus utile, offrant une couverture plus approfondie comme un tableau des méthodes pour chacun des objets implicites.

Et, avec la description de l'intégration JavaBean, vous obtenez plus que simplement comment utiliser la jsp:useBeansyntaxe, mais aussi une belle discussion sur l'architecture des composants JavaBeans et, pour les très débutants, comment utiliser les propriétés indexées de JSP.

Le chapitre 6 est l'endroit où le livre semble être plus axé sur le développeur Java que sur le concepteur Web. Il offre un aperçu de la création de composants JavaBean avec le modèle d'événement JavaBean ainsi qu'avec des propriétés liées et contraintes. La discussion sur JDBC avec JSP et le pool de connexions comprend également de petits extras tels que l'utilisation de JNDI pour rechercher la source de données. Il existe même un exemple d'utilisation de a CachedRowSetpour répartir les résultats de la requête sur plusieurs pages. Vous obtenez également une application de base de données FAQ et des instructions sur la façon de la déployer en tant qu'application Web avec l'outil de déploiement J2EE.

Si cela ne suffit pas, Fields et Kolb couvrent également l'exécution de tâches courantes telles que la gestion des cookies, la gestion des erreurs JSP, l'envoi d'e-mails avec l'API JavaMail, ainsi que la génération de XML. Il existe également deux chapitres sur l'utilisation des bibliothèques de balises personnalisées, de la construction à l'emballage et sur de nombreuses tâches intermédiaires. Les annexes comprennent les instructions d'installation de Tomcat et vous aident à intégrer des applets dans les pages JSP. La seule chose que j'ai trouvée manquante dans le livre était un panier d'achat typique basé sur JSP.

Étant donné le titre des Core Servlets et des JavaServer Pages, je ne savais pas si je devais l'inclure dans la revue. C'est un bon livre, mais ce n'est pas le meilleur pour simplement en apprendre davantage sur les pages JavaServer, d'autant plus que la couverture JSP ne commence qu'au chapitre 10. C'est un excellent livre pour le développeur Java pour en savoir plus sur les servlets, comment utiliser les pages JSP avec les servlets et comment connecter des servlets à un backend JDBC. Ce n'est tout simplement pas pour quelqu'un qui s'intéresse strictement à l'apprentissage des pages JavaServer; par conséquent, je ne l'ai pas noté comme une ressource d'apprentissage JSP.

Cela dit, comment est la couverture JSP? L'auteur Marty Hall fournit une couverture JSP suffisante pour le développeur Java, mais certainement pas la profondeur de la couverture offerte dans le développement Web. Vous trouverez les descriptions typiques des éléments de script, des directives et du support JavaBeans. Il y a un chapitre décent sur la création d'une bibliothèque de balises JSP personnalisée et un joli chapitre sur l'intégration de pages JSP avec des servlets. C'est vraiment tout pour la couverture JSP. Le reste du livre se concentre davantage sur le contenu spécifique aux servlets. Par exemple, les exemples JDBC sont purement pilotés par servlet, sans discussion de JDBC avec JSP.

L'annexe offre une référence rapide qui est une carte de syntaxe combinée, une référence API partielle et une ressource d'étude d'examen de certification.

Si le livre avait été disponible lorsque j'ai passé en revue les livres de servlets dans "Java servlet books: A comparative review", je l'aurais recommandé plutôt que Java Servlet Programming par Jason Hunter, principalement parce qu'il couvre la dernière version de l'API Servlets.

Professional JSP (4 étoiles)

La dernière entrée dans cette revue comparative de livres JSP vient de Wrox Press avec 21 auteurs différents, moi y compris. En bref, Professional JSP semble se situer quelque part en dessous du développement Web et au-dessus de Pure Java en termes de profondeur de couverture JSP. Bien que manquant de profondeur, il essaie de le compenser dans l'étendue des sujets couverts, y compris l'analyse WAP / WML, JMF et XML, ainsi que plusieurs études de cas approfondies. De plus, avec 21 auteurs différents, il semble qu'il y ait au moins 21 environnements d'exécution différents, ce qui vous permet d'expérimenter de nombreux environnements différents. Et vous pourrez voir 21 styles de codage différents.

Le livre commence par une introduction typique aux pages JavaServer et une comparaison avec les technologies de contenu dynamique disponibles sur le Web. Après l'introduction, vous trouverez un aperçu de la syntaxe JSP, des directives aux actions et aux objets implicites. Rien n'est trop élaboré et les objets implicites référencent simplement quel objet de l'API Servlet ils représentent, mais pas ce que vous pouvez en faire.

Le chapitre sur JSP et JavaBeans passe plus de temps à décrire la spécification JavaBeans et ne mentionne rien sur les différentes portées lors de l'utilisation de la jsp:useBeanbalise. Cependant, il introduit un pool de connexions JDBC, un autre étant décrit plus en détail dans le dernier chapitre sur l'intégration JDBC. La discussion sur les sessions de servlet et les bibliothèques de balises personnalisées est suffisante. Il y a même un joli chapitre sur le débogage de vos applications JSP.