Quoi de mieux entre JSP et Velocity In - Performance - Facilité d'utilisation - Facilité de création de composants réutilisables - Disponibilité de tierces parties open source - Support IDE
Réponses
Trop de publicités?@Vartec: Je ne pense pas que la "séparation stricte de vue de la logique d'entreprise" est une vitesse caractéristique qui n'est pas présent dans les jsp. Vous pouvez faire de la logique métier dans les jsp (plus ou moins) mais c'est pas du tout recommandé. Mais je suis d'accord sur votre point au sujet de la syntaxe.
Performance
JSP est compilé en Java, donc je ne pense pas que la vitesse est plus rapide. (n'ont pas fait les repères de moi-même)
La facilité d'utilisation
Pour les concepteurs: vitesse Pour les programmeurs: (à mon humble avis) jsp, parce que c'est plus proche de code
La facilité de création de composants réutilisables
JSP a beaucoup de composants La vélocité n'a pas de composants de lui-même (pas de composant orienté)
La disponibilité de l'open source du 3 parties
J'ai vu beaucoup plus de projets à l'aide de JSP JSP ou des technologies connexes que de vitesse. Peut-être parce que la vitesse est vraiment de bas niveau... :-)
IDE de soutien
Il existe de nombreux outils pour les jsp. En particulier, l'eclipse, jboss plugin/suite d'outils a un bon éditeur jsp.
Plugins pour la Vitesse sont pour la plupart pas fonctionnelle ou assez basique (vous avez de la chance si vous avez de la syntaxe)
Ci-dessous est d'environ Freemarker, mais les comparaisons sont probablement toujours d'actualité.
À ce point de ces deux technologies de développement, il semble que les principales raisons de choisir l'un sur l'autre sont les suivantes:
- Il y a quelque chose de spécifique que vous avez besoin est dans l'une et pas l'autre
- Vous voulez éviter de vue des développeurs de mettre Java scriptlets dans des pages JSP
- Vos développeurs sont plus à l'aise dans les une que les autres
Des raisons qui ne semblent pas avoir autant d'impact:
- Vitesse. Il y a tellement de couches dans un typique Java EE app qui ont un impact beaucoup plus grand que le couple de millisecondes plus ou moins qu'une vue convertisseur peut prendre. En fait, c'est probablement la dernière couche, je voudrais aborder si mon appli a été effectuer subpar.
- IDE de soutien. JBoss Tools fournit un Freemarker de l'éditeur, et JSP outils sont bien connus.
- La syntaxe. JSP 2 et Freemarker ont pratiquement identique syntaxe pour de nombreuses opérations de base, en raison de EL et de la JSTL.
Freemarker Exemple:
<#list foos as foo>
<tr>
<td>${foo.field1}</td>
<td>${foo.field2}</td>
<td>
<#list foo.childObjects as child>
<#if child.name == 'bar'>
${child.value}
</#if>
</#list>
</td>
</tr>
</#list>
JSP-EL-JSTL Exemple:
<c:forEach items="${foos}" var="foo">
<tr>
<td>${foo.field1}</td>
<td>${foo.field2}</td>
<td>
<c:forEach items="${foo.childObjects}" var="child">
<c:if test="${child.name == 'bar'}">
${child.value}
</c:if>
</c:if>
</td>
</tr>
</c:forEach>
Vitesse ou encore mieux FreeMarker. En JSP vous ne pouvez pas avoir d'exécution d'expédition pour pojo hiérarchies et tout est statiquement typé, qui est une douleur. En outre, si vous créez de nombreux JSP2.0 tags personnalisés (disons plus de 100-150) puis votre développement-cycle de déploiement va ralentir fortement en raison de l'inefficacité de Jasper pour résoudre les dépendances de manière efficace.
Sur l'autre main JSP a un grand support de l'outil.
lent JSP compilation de références:
http://www.mailinglistarchive.com/users@tomcat.apache.org/msg10786.html
Je vais mettre l'accent sur l'utilisation d'un moteur de template, parce que c'est ce que j'ai le plus d'expérience avec.
Cela dépend de ce que vous voulez vraiment faire. Les Servlets en combinaison avec la Vitesse (ou FreeMarker d'ailleurs) offre une très bonne séparation de la logique et de la présentation. Les modèles sont plus difficiles à tester, parce que vous auriez besoin pour évaluer le modèle afin d'être en mesure de juger si le HTML (ou quoi que ce soit le format de sortie est) est correct. Pour les JSP cela peut être fait dans votre IDE de choix.
Le gros avantage de modèles est que vous pouvez stocker ces totalement en dehors de votre application et même de mettre à jour pendant que votre demande est en cours d'exécution. C'est quelque chose qui est un peu plus difficile à faire avec JSP, bien que le déploiement à chaud est assez proche.
Composants réutilisables peuvent être créés en utilisant l'inclure des fonctionnalités du moteur de template.