Examen de fin de module
Module : Java avancé
Filière : Concepteur réalisateur JAVA/JEE
Durée : 2 H
Question de cours : (8 pts)
- Quels sont les deux moyens permettant de créer un thread en Java ? Pourquoi utiliser l'un ou l'autre ? (2 pts)
- Quelles sont les étapes pour le déploiement d'un objet serveur avec RMI ? (1 pt)
- Quelle est l'utilisation du mot-clé synchronized en Java ? (1 pt)
- Quelle est la différence entre Vector et ArrayList ? (1 pt)
- Quelle est la différence entre yield() et sleep() en Java ? (1 pt)
- Quelles sont les étapes de base pour créer une application JDBC ? (1 pt)
- Quelle est la différence entre Statement et PreparedStatement en Java ? (1 pt)
Exercice 1 : QCM (2,5 pts)
Dans le contexte des sockets en Java, que fait la fonction accept() ?
a. Elle accepte un client qui vient de faire une demande de connexion. b. Elle accepte un client qui vient de se connecter et crée une socket pour communiquer avec ce client. c. Elle récupère seulement les informations du client (adresse IP, etc.). d. Elle accepte le message arrivant et le stocke dans la structure passée en argument.
Quelle instruction permet d'effectuer la validation d'une transaction en JDBC ?
a. accept() b. rollback() c. commit() d. validate()
Dans le contexte de l'interface graphique Swing en Java, quel est le type d'objet le plus haut dans l'arbre d'instanciation des objets graphiques ?
a. JFrame b. JPanel c. JComboBox d. JTextArea
Quel type de Statement peut exécuter une requête paramétrable en JDBC ?
a. PreparedStatement b. ParameterizedStatement c. ParameterizedStatement et CallableStatement d. Toutes les sortes de Statement (i.e. sous-interfaces de Statement)
Comment peut-on récupérer les données d'un ResultSet en JDBC ?
a. En appelant la méthode get(..., String type) sur le ResultSet, où type sera le type de la base de données. b. En appelant la méthode get(..., Type type) sur le ResultSet, où Type est un objet qui représente un type de la base de données. c. En appelant la méthode getValue(...), et en convertissant le résultat vers le type Java souhaité. d. En appelant les méthodes spéciales "getter" sur le ResultSet : getString(...), getBoolean(...), getClob(...), etc.
Exercice 2 : (3.5 pts)
En utilisant les sockets en Java, créez un serveur qui reçoit en entrée une chaîne de caractères (String) et retourne une copie de la chaîne avec l'ordre de ses caractères inversé. Vous devez créer toutes les classes et interfaces nécessaires ainsi qu'un client qui demande ce service.
interface graphique, Swing, ResultSet, PreparedStatement, validation de transaction.