estions à oix multiples

publicité
+7/1/36+
y
y
NOM et Prénom
Programmation Web Avancée
.........................................
Durée − 1h30. Tous documents de cours autorisés. Chaque question peut avoir une ou plusieurs
bonne(s) réponse(s). Ne passez pas trop de temps sur le QCM. La réponse « (autre) » doit être cochée si
aucune des autres réponses n'est correcte.
estions à oix multiples
Q1
Au sujet des frameworks Java :
Java EE est un framework Java complet
CSS est un framework Java
AngularJS est un framework Java MVC
Spring est un standard
Spring est un framework Java complet
Java EE est un standard
Q2
Au sujet de JSP :
JSP veut dire « Java Standard Protocol »
les JSP sont compilées en classes Java
JSP ne peut être utilisé que dans Spring
JSP est un « langage de templating »
Q3
Une servlet :
est instanciée pour chaque requête HTTP
peut correspondre à plusieurs URL
reçoit un objet représentant la réponse HTTP
reçoit un objet représentant la requête HTTP
Q4
Un bean utilisé avec un scope session sera créé :
à chaque requête HTTP
une seule fois, à sa première utilisation
une seule fois, au démarrage de l'application
à chaque fois qu'un nouvel utilisateur commence à naviguer
Q5
Dans une JSP, sachant que la requête est http://site.com/mon.jsp?msg=Hello , on peut
produire Hello avec :
${fn:join(paramValues.msg, " et ")}
${param.msg}
(autre)
${"Hello"}
Q6
Si une classe Article contient une propriété auteur de type Personne et qu'une
Personne contient une propriété nom . Si nous avons un article o dont l'auteur est null , l'expression
en EL (Expression Language) o.auteur.nom produira :
y
le texte null
le texte None
une erreur NullPointerException
(autre)
y
+7/2/35+
y
Q7
y
Pour utiliser une structure conditionnelle c::if dans une JSP :
il faut d'abord utiliser l'EL pour remplir une variable avec la condition
il faut utiliser la directive taglib
il faut écrire une servlet pour gérer la condition
il faut utiliser l'EL pour importer la JSTL
il faut utiliser avoir la JSTL dans le classpath
il faut importer la JSTL avec la directive import
Q8
elle(s) annotation(s) de JPA sont utilisée(s) pour définir une classe persistante ?
@RequestMapping
(autre)
@Id
@Data
Q9
@Entity
JpaRepository
Dans une architecture MVC classique :
la vue affiche les données du modèle
le modèle modélise les objets du domaine
la vue connaît le contrôleur
le modèle gère les événement de l'utilisateur
le contrôleur contient la logique métier
le contrôleur agit sur le modèle
Q 10
Au sujet de l'injection de dépendances (DI) :
(autre)
elle aide à créer des systèmes modulaires
elle sert à injecter du code au début ou la fin des méthodes
elle sert à injecter des instances de services
elle transère la tâche de création d'objet vers le framework
elle sert à injecter du CSS dans le HTML
Q 11
Au sujet de Spring :
il ne peut pas interagir avec Java EE
il permet de faire des architectures MVC
il permet de faire de l'injection de dépendances
il ne permet pas de faire des services REST
Q 12
Javascript, c'est :
une façon de rendre dynamique une page
un langage typé dynamiquement
un dialecte XML
Java mais exécuté par le navigateur
un langage limité au navigateur
un langage compris par le navigateur
y
y
+7/3/34+
y
Q 13
Au sujet de Javascript :
il ne s'exécute que dans le navigateur
c'est un langage fonctionnel
c'est une version dynamique de Java
Q 14
y
c'est un langage orienté objet
c'est le seul langage impératif qui s'exécute
dans le navigateur
AngularJS est un framework :
il sert à faire des applications mono-page
il permet d'avoir des fonctions avancées sur des vieux navigateurs
il est fait pour faire du MVC dans node.js
il sert à faire de la programmation par aspects
il est modulaire
il sert à faire des application qui s'adaptent à la taille de l'écran
il fonctionne « hors-ligne » (sans serveur)
il ajoute la fonctionnalité AJAX au navigateur
Q 15
Les directives AngularJS :
enrichissent HTML
déclarent des services Javascript
(autre)
définissent les dépendances entre modules
permeent un binding bi-directionnel
permeent un binding uni-directionnel
Q 16
enrichissent Javascript
REST :
signifie Representational state transfer
est une approche architecturale
décrit des RPC (remote procedure call)
est un framework
utilise SOAP (Simple Object Access Protocol)
Q 17
a été formalisé dans des travaux de recherche
s'articule autour de ressources
Au sujet des outils utilisés :
bootstrap permet de simplifier l'utilisation de Spring
node.js permet de faire du Javascript dans un programme Java
Git permet de garder l'historique du projet
Spring boot sert de faire du REST en Spring
Spring MVC permet de faire des contrôleurs en Spring
bower permet d'installer des bibliothèques Javascript
Spring Data remplace JPA
Exercices
Pour les exercices ci dessous, répondez sur une feuille d'examen. Prenez le temps de bien lire
l'énoncé. Le nombre d'étoiles donné entre parenthèse est une indication pour vous donner une idée
du détail de la réponse attendue.
---- Exercice 1 (⋆⋆) -----Donnez et expliquez les différents niveaux de portée des variables dans les JSP.
---- Exercice 2 (⋆⋆) -----y
y
+7/4/33+
y
y
Expliquez le concept de Hypermedia as the engine of application state (HATEOAS).
---- Exercice 3 (⋆⋆) -----Supposons une application « TP » dans laquelle vous avez implémenté un controlleur pour gérer un
tableau de contrôle accessible à l'URL http://localhost:8080/TP/dashboard. Expliquez les mécanismes qui font que le bon controlleur est appelé quand l'utilisateur consulte l'URL donnée.
---- Exercice 4 (⋆⋆⋆⋆⋆) -----En utilisant une approche « MVC Web », proposez une architecture (quelles classes, jsp, etc, avec leurs
contenus et rôles respectifs) pour une application permeant de gérer une liste de session de rarapage
(avec ajout et suppression), chaque session ayant un titre, une date, un nombre d'étudiant, etc.
---- Exercice 5 (⋆⋆⋆⋆) -----En utilisant un application-exemple de votre choix, établissez un parallèle entre deux architectures :
1. SV: une application Spring/JPA/JSP,
2. NG: une application Spring/REST/AngularJS.
y
y
Téléchargement