Top 50 des questions d'entrevue JSP & Réponses

Anonim

Télécharger le PDF

1) Expliquez JSP et dites ses utilisations.

JSP signifie Java Server Pages. Il s'agit d'une technologie de couche de présentation indépendante de la plate-forme. Il est livré avec les plates-formes J2EE de SUN. Ils sont comme des pages HTML mais avec des morceaux de code Java intégrés. Ils sont enregistrés avec une extension .jsp. Ils sont compilés à l'aide du compilateur JSP en arrière-plan et génèrent un servlet à partir de la page.

2) Quelle est l'exigence d'une bibliothèque de balises?

Une collection de balises personnalisées est appelée une bibliothèque de balises. Les tâches récurrentes sont gérées plus facilement et réutilisées dans plusieurs applications pour augmenter la productivité. Ils sont utilisés par les concepteurs d'applications Web qui se concentrent sur la présentation plutôt que sur l'accès à la base de données ou à d'autres services. Certaines bibliothèques populaires sont la bibliothèque de balises String et la bibliothèque de balises d'affichage Apache.

3) Expliquez la technologie JSP.

JSP est une extension standard de Java et est définie au-dessus des extensions Servlet. Son objectif est de simplifier la gestion et la création de pages Web dynamiques. Il est indépendant de la plate-forme, sécurisé et utilise Java comme langage de script côté serveur.

4) Expliquez les objets implicites dans JSP.

Les objets créés par le conteneur Web et contenant des informations concernant une demande, une application ou une page particulière sont appelés objets implicites. Elles sont :

  • réponse
  • exception
  • application
  • demander
  • session
  • page
  • en dehors
  • config
  • pageContexte

5) Comment peut-on empêcher plusieurs soumissions dues à des clics sur le bouton d'actualisation?

En utilisant un modèle Post / Redirect / Get ou PRG, ce problème peut être résolu.

1) Un formulaire rempli par l'utilisateur est soumis au serveur en utilisant la méthode POST ou GET. L'état dans la base de données et le modèle commercial sont mis à jour.

2) Une réponse de redirection est utilisée pour répondre par le servlet pour une page de vue.

3) Une vue est chargée par le navigateur à l'aide de la commande GET et aucune donnée utilisateur n'est envoyée. Ceci est à l'abri de plusieurs soumissions car il s'agit d'une page JSP séparée.

6) La technologie JSP est-elle extensible?

Oui, JSP est facilement extensible par l'utilisation et la modification de balises, ou d'actions personnalisées, encapsulées dans des bibliothèques de balises.

7) Faites la différence entre response.sendRedirect (url) et

…>.

L'élément transfère l'objet de requête d'un fichier JSP à un autre. Le fichier cible peut être du HTML, un servlet ou un autre fichier JSP, mais il doit être dans le même contexte d'application que le fichier JSP de transfert.

sendRedirect envoie une réponse de redirection HTTP temporaire au navigateur. Le navigateur crée alors une nouvelle demande pour la page redirigée. Il tue les variables de session.

8) Peut-on accéder à une requête ultérieure avec le code de son servlet, si un attribut de requête est déjà envoyé dans sa JSP?

La demande est hors de portée et ne peut donc pas être accédée. Cependant, si un attribut de requête est défini dans son servlet, il est alors accessible dans sa JSP.

Une JSP est un composant côté serveur et la page est traduite en servlet Java, puis exécutée. Seul le code HTML est donné en sortie.

9) Comment inclure des fichiers statiques dans une page JSP?

Les pages statiques sont toujours incluses à l'aide de la directive d'inclusion JSP. De cette façon, l'inclusion est effectuée une fois dans la phase de traduction. Notez qu'une URL relative doit être fournie pour l'attribut de fichier. Bien que des ressources statiques puissent être incluses, ce n'est pas préférable car chaque demande nécessite une inclusion.

10) Pourquoi JComponent a-t-il les méthodes add () et remove (), mais pas Component?

JComponent est une sous-classe de Container. Il contient d'autres composants et composants JC.

11) Comment une page JSP thread-safe peut-elle être implémentée?

Cela peut être fait en les faisant implémenter par l'interface SingleThreadModel. Ajoutez la directive <% @ page isThreadSafe = ”false”%> dans la page JSP.

12) Comment la sortie de JSP ou de la page de servlet peut-elle être empêchée d'être mise en cache par le navigateur?

Utilisation d'attributs d'en-tête HTTP appropriés pour empêcher la sortie de contenu dynamique d'une page JSP d'être mise en cache par le navigateur.

13) Comment restreindre l'affichage des erreurs de page dans une page JSP?

En définissant un attribut «ErrorPage» du répertoire PAGE sur le nom de la page d'erreur dans la page JSP, puis dans l'ensemble de pages d'erreur jsp «isErrorpage =» TRUE », les erreurs peuvent être empêchées de s'afficher.

14) Que sont les actions JSP?

Ce sont des balises XML, qui dirigent le serveur vers l'utilisation de composants existants ou le contrôle du comportement de JSP Engine. Ils se composent d'un préfixe typique de «jsp:» et du nom de l'action.

15) Faites la différence entre et <% @ include file =…>.

Ces deux balises contiennent des informations d'une page à l'autre.

La première balise agit comme un appel de fonction entre deux Jsp. Il est exécuté à chaque fois que le client accède à la page client. Il est utile de modulariser l'application Web. Le nouveau contenu est inclus dans la sortie.

Le deuxième contenu de balise du fichier est incorporé textuellement avec une directive similaire. Le contenu modifié n'est pas inclus dans la sortie. C'est utile lorsque le code d'un jsp est requis par plusieurs jsp.

16) Le constructeur peut-il être utilisé à la place de init (), pour initialiser le servlet?

Oui c'est possible. Mais ce n'est pas préféré car init () a été développé car les versions antérieures de Java ne pouvaient pas invoquer dynamiquement les constructeurs avec des arguments. Ils ne pouvaient donc pas attribuer de servletConfig. Aujourd'hui, cependant, les conteneurs de servlet n'appellent toujours que le constructeur sans argument. Il n'y a donc pas d'accès à servletContext ou servletConfig.

17) Expliquez les méthodes du cycle de vie. 1)

jsplnit () : le conteneur appelle ceci pour initialiser l'instance de servlet. Il n'est appelé qu'une seule fois pour l'instance de servlet et précédé toutes les autres méthodes. 2)

_jspService () : le conteneur l'appelle pour chaque requête et la transmet aux objets. 3)

jspDestroy () : il est appelé par le conteneur juste avant la destruction de l'instance.

18) Expliquer les commentaires de sortie JSP?

Ce sont des commentaires qui peuvent être affichés dans le fichier source HTML.

19) Définir l'expression

La balise d'expression est utilisée pour insérer des valeurs Java directement dans la sortie. Sa syntaxe est

<% = expression%>

Il contient une expression de langage de script qui est évaluée, puis convertie en chaîne, puis insérée à l'endroit où l'expression vient dans le fichier JSP.

20) Définissez la composition.

La composition a une relation plus forte avec l'objet que l'agrégation.

21) Définissez le scriptlet JSP.

Il s'agit d'une balise JSP qui englobe le code Java dans les pages JSP. Leur syntaxe est <%%>. Le code écrit en scriptlet s'exécute à chaque fois que le programme est exécuté.

22) Comment les informations d'une JSP peuvent-elles être transmises à une autre JSP?

La balise nous permet de passer des informations entre plusieurs Jsp.

23) Expliquez les utilisations de la balise .

id="beanInstName"scope= "page | application"class="ABC.class" type="ABC.class"

Cette balise crée une instance de java bean. Il essaie d'abord de trouver si une instance de bean existe déjà et d'assigner stocke une référence dans la variable. Le type est également spécifié; sinon, il instancie à partir de la classe spécifiée en stockant une référence dans la nouvelle variable.

24) Expliquez la gestion des exceptions d'exécution.

L'attribut Errorpage est utilisé pour décrocher les exceptions d'exécution transmises automatiquement à une page de traitement des erreurs.

Il redirige le navigateur vers la page JSP error.jsp si une exception non interceptée est confrontée lors du traitement de la demande. C'est une page de traitement des erreurs.

25) Pourquoi _jspService () commence-t-il par un '_' alors que d'autres méthodes de cycle de vie ne le font pas?

Quel que soit le contenu créé dans une page jsp, il entre dans la méthode _jspService () par le conteneur. S'il s'agit d'un remplacement, le compilateur donne une erreur, mais les 2 autres cycles de vie peuvent être facilement remplacés. Ainsi, «_» montre que nous ne pouvons pas remplacer cette méthode.

26) Expliquez les différentes valeurs de portée de la balise .

La balise est utilisée pour utiliser n'importe quel objet java dans la page jsp. Certaines valeurs de portée sont:

1) application

2) demande

3) page

4) séance

27) Afficher les 2 types de commentaires dans JSP.

Les 2 types sont:

<%-JSP Comment-%>

28) La méthode statique peut-elle être remplacée?

Nous pouvons déclarer des méthodes statiques avec la même signature dans la sous-classe, mais cela n'est pas considéré comme écrasant car il n'y aura pas de polymorphisme à l'exécution. Par conséquent, la réponse est «non».

29) Expliquez les directives JSP.

Les directives JSP sont des messages adressés au moteur JSP. Ils servent de message de page en conteneur et contrôlent le traitement de la page entière. Ils peuvent définir des valeurs globales comme la déclaration de classe. Ils ne produisent pas de sortie et sont inclus dans <% @….%>

30) Expliquez les directives pge.

Les directives de page informent le moteur JSP des en-têtes et des fonctionnalités que la page reçoit de l'environnement. Il se trouve en haut de toutes les pages JSP. Sa syntaxe est <% @ page attribute = "value">

31) Afficher les attributs des directives de page.

1) Session: il montre si des données de session sont disponibles sur la page.

2) Importer: il affiche les packages importés.

3) isELIgnored: indique si les expressions EL sont ignorées lorsque JSP se traduit en servlet.

4) contentType: il permet à l'utilisateur de spécifier le type de contenu de la page.

32) Qu'est-ce que la directive Inclure?

La directive include insère statiquement le contenu d'une ressource dans la JSP actuelle. Cela aide à la réutilisation du code sans duplication. et inclut le contenu du fichier au moment de la traduction. Sa syntaxe est la suivante <% @ include file = ”Filename”%>.

33) Que sont les actions standard dans JSP?

Ils affectent le comportement d'exécution global d'une page et de la réponse envoyée au client. Ils sont utilisés pour inclure un fichier au moment de la demande, pour instancier un JavaBean ou en trouver un. Ils sont également utilisés pour générer un code spécifique au navigateur ou pour transférer une requête vers une nouvelle page.

34) Expliquez l'action jsp: setProperty.

Il est utilisé pour donner des valeurs aux propriétés de beans qui ont été référencées au préalable.

jsp: setproperty est exécuté même si un nouveau bean est instancié ou si un bean existant est trouvé.

En ajoutant à la fin du code, la condition d'exécution est inversée c'est-à-dire qu'elle n'est pas exécutée si un objet existant a été trouvé et seulement si un nouvel objet a été instancié.

35) Définissez le bloc statique.

Il est utilisé pour démarrer le membre de données statiques. Il est exécuté avant le chargement de classe.

36) Expliquez jsp: action du plugin.

Cette action permet d'insérer un objet spécifique dans le navigateur ou d'intégrer l'élément nécessaire pour spécifier l'exécution de l'applet à l'aide du plugin Java.

37) Expliquez la validation côté client et serveur.

Javascript est utilisé pour la validation côté client. Cela se déroule dans le navigateur. Javascript est utilisé pour soumettre les données du formulaire si la validation est réussie. Les erreurs de validation ne nécessitent aucun voyage réseau supplémentaire car le formulaire ne peut pas être soumis.

La validation est également effectuée dans le serveur après la soumission. Si la validation échoue, un voyage supplémentaire sur le réseau est nécessaire pour renvoyer le formulaire au client.

38) Qu'est-ce que la phase de traduction?

Le moteur JSP traduit et compile un fichier JSP en servlet. Ce servlet passe à la phase d'exécution où les demandes et les réponses sont traitées. Ils sont compilés pour la première fois qu'ils sont consultés à moins qu'ils ne soient compilés manuellement à l'avance. La compilation manuelle ou explicite est utile pour les programmes longs et compliqués.

39) Effectuez une redirection de navigateur à partir d'une page JSP.

<% response.sendRedirect(URL); %>

ou nous pouvons changer l'emplacement de l'attribut d'en-tête HTTP comme suit:

<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>

40) Donner des utilisations du clonage d'objets.

Le clonage d'objets est utilisé pour créer une copie exacte d'un objet en tapant le même code ou en utilisant diverses autres techniques.

41) Comment transférer une demande vers une autre source.

42) Comment empêcher la création automatique de session dans une page JSP?

La page JSP crée automatiquement des sessions pour les demandes. En tapant ce qui suit, cela peut être évité.

<%@ page session=”false” %>

43) Comment pouvez-vous éviter le code de scriptlet dans JSP?

Des JavaBeans ou des balises personnalisées peuvent être utilisés à la place du code de scriptlet.

44) Expliquez la méthode jspDestroy ().

Chaque fois qu'une page JSP est sur le point d'être détruite, le conteneur appelle la méthode jspDestroy () à partir de l'interface javax.servlet.jsp.JspPage. Les méthodes de destruction des servlets lui sont similaires. Il peut être facilement remplacé pour effectuer un nettoyage, comme lors de la fermeture d'une connexion à une base de données.

45) Expliquez l'action .

Il s'agit d'une action utilisée avec des actions standard d'inclusion ou de transmission. Cela aide à transmettre les noms et les valeurs des paramètres à une ressource.

46) Expliquez la méthode statique.

Une méthode statique appartient à la classe et non à l'objet d'une classe. Il peut être appelé sans instance de classe. Les membres statiques peuvent également accéder aux données statiques et modifier leur valeur.

47) Comment désactiver les scripts?

Le script peut être facilement désactivé en définissant l'élément scripting-invalid du descripteur de déploiement sur true. C'est un sous-élément du groupe de propriétés. Cela peut aussi être faux.

48) Définir la déclaration JSP.

Les déclarations JSP sont des balises utilisées pour déclarer des variables. Ils sont inclus dans la balise <%!%>. Ils sont utilisés pour déclarer des fonctions et des variables.

<%@page contentType=”text/html” %><%!int a=0;private int getCount(){a++;return a;}%>

Values of a are:

<%=getCount()%>

49) Comment empêcher la mise en cache de la sortie HTML?

<%response.setHeader("Cache-Control", "no=store");response.setDateHeader("Expires", 0);%>

50) En quoi JSP est-il meilleur que la technologie Servlet?

JSP est une technologie côté serveur qui simplifie la génération de contenu. Ils sont centrés sur le document, tandis que les servlets sont des programmes. Une page de serveur Java peut contenir des fragments de programme Java, qui exécutent et instancient des classes Java. Cependant, ils se produisent dans un fichier de modèle HTML. Il fournit le cadre de développement d'une application Web.