Je vois une fonctionnalité dans NetBeans pour sélectionner un JSP
pour un Servlet
et le résultat XML dans web.xml
est comme ça:
<servlet>
<servlet-name>TestServlet</servlet-name>
<jsp-file>/index.jsp</jsp-file>
</servlet>
Qu'est-ce que ça veut dire? Et à quoi ça sert? Est-ce comme code derrière architecture dans ASP .NET?
Qu'est-ce que cela signifie? Et à quoi ça sert?
Il est utilisé pour mapper un nom canonique pour un servlet (pas une classe de servlet réelle que vous avez écrite) à un JSP (qui se trouve être un servlet). En soi, ce n'est pas très utile. Vous devrez souvent mapper la servlet sur un modèle d'URL comme suit:
<servlet>
<servlet-name>TestServlet</servlet-name>
<jsp-file>/index.jsp</jsp-file>
</servlet>
<!--mapping-->
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/test/*</url-pattern>
</servlet-mapping>
Toutes les demandes qui arrivent maintenant à /test/*
Seront désormais traitées par le JSP.
De plus, la spécification de servlet indique également:
L'élément
jsp-file
Contient le chemin d'accès complet à un fichier JSP dans l'application Web commençant par un "/". Si unjsp-file
Est spécifié et que l'élémentload-onstartup
Est présent, alors le JSP doit être précompilé et chargé.
Ainsi, il peut être utilisé pour la précompilation de servlets, au cas où votre processus de génération ne les aurait pas précompilés. Gardez à l'esprit que la précompilation des JSP de cette manière n'est pas exactement une meilleure pratique. Idéalement, votre script de construction devrait s'occuper de ces questions.
Est-ce comme du code derrière l'architecture dans ASP .NET?
Non, si vous recherchez une architecture code-behind, la ressemblance la plus proche avec celle-ci se trouve dans le support Managed Beans proposé par JSF.
JSP sont servlets. JSP est une technologie de création de modèles qui analyse le fichier .jsp et génère un fichier servlet .Java. Une fois cela fait, le fichier .Java est compilé dans un fichier .class qui s'exécute dans le contexte du moteur servlet/JSP.
Tout ce que fait le fichier web.xml, c'est d'associer un fichier .jsp à un nom de servlet. Il y a plus: vous devez mapper ce .jsp à une URL pour que le moteur de servlet/JSP puisse savoir quand l'invoquer.
Je ne sais pas ASP ou .NET assez bien pour dire si c'est la même chose que "code derrière".
Les JSP sont une sorte de servlet. Les pages JSP sont compilées en servlet. Cette servlet s'exécute dans le conteneur de servlets fourni par un serveur Web Java.
Dans web.xml, <servlet>
balise utilisée pour nommer le nom de la classe de servlet et le fichier jsp. Ensuite, vous pouvez mapper ces servlets et fichiers jsp en fonction de vos propres URL.
<servlet>
<servlet-name>hello</servlet-name>
<jsp-file>/jsp/hello.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>hello</servlet-name>
<url-pattern>/helloworld</url-pattern>
</servlet-mapping>
Si votre fichier hello.jsp se trouve dans le dossier JSP. Lorsque vous essayez d'ouvrir l'URL avec/helloworld. Cela ouvrira la page hello.jsp.