Vous êtes sur la page 1sur 4

OFPPT

Office de la Formation Professionnelle


et de la Promotion du Travail
Direction Rgionale Tensift Atlantique

tablissement : ISTA NTIC SYBA


Examen de fin de module : Java Avanc
2012/2013
Filire: Concepteur ralisateur Java/J2EE

Groupe(s) : A

Niveau : Formation qualifiante


Dure : 2 heures

Barme:

/20

Partie I : Thorique (9 points)


Exercice 1 : (3 pts)
1. Cest quoi RMI ? (1 pt)
2. Quelles sont les tapes pour le dploiement d'un objet serveur avec RMI ? (2 pts)
Exercice 2 : QCM (6 pts)
Cchez la bonne rponse :
1. Quelles affirmations sont vraies propos de JDBC? (2 rponses) (1 pt)
a. JDBC est un API pour se connecter des sources de donnes relationnelles, objets ou
b. XML.
c. JDBC vient de Java DataBase Connectivity.
d. JDBC est un API qui permet daccder des bases de donnes relationnelles, des
feuilles de tableurs et des fichiers en format texte.
e. JDBC est un API pour contourner la discordance objet-relationnel entre les programmes
OO et les bases de donnes relationnelles.
Page 1 / 4

2. Quels packages contiennent les classes JDBC? (1 pt)


a. java.jdbc et javax.jdbc
b. java.jdbc et java.jdbc.sql
c. java.sql et javax.sql
d. java.rdb et javax.rdb
3. Quel type de Statement peut excuter une requte paramtrable? (0,5 pt)
a. PreparedStatement
b. ParameterizedStatement
c. ParameterizedStatement et CallableStatement
d. Toutes les sortes de Statement (i.e. sous interfaces de Statement)
4. Quelles affirmations propos des transactions JDBC sont-elles vraies? (2 rponses correctes)
(1 pt)
a. Une transaction est un ensemble dinstructions excutes avec succs dans une base
de donnes
b. Une transaction est termine si commit() ou rollback() sont appels sur lobjet
Connection
c. Une transaction est termine si commit() ou rollback() sont appels sur lobjet
Transaction
d. Une transaction est termine si close() est appele sur un objet Connection.
5. Comment est-il possible de dmarrer une transaction dans une base de donnes? (1 pt)
a. En demandant un objet Transaction la Connection, et en appelant la mthode begin()
b. En demandant un objet Transaction la Connection, et en mettant la proprit
autoCommit de lobjet Transaction sur faux
c. En appelant la mthode beginTransaction() sur lobjet Connection
d. En mettant la proprit autoCommit de la connection sur la position faux et en
excutant une instruction dans la base de donnes
6. Comment peut-on voir les donnes qui sont dans un ResultSet? (0,5 pt)
a. En appelant la mthode get(..., String type) sur le ResultSet, o type sera le type de la
base de donnes
b. En appelant la mthode get(..., Type type) sur le ResultSet, o Type est un objet qui
reprsente un type de la base de donnes
c. En appelant la mthode getValue (...), et en convertissant le rsultat vers le type Java
souhait
Page 2 / 4

d. En appelant les mthodes spciales getter sur le ResultSet: getString(...),


getBoolean(...), getClob(...),...

7. Quelle affirmation en rapport avec les composants GUI est fausse? (0,5 pt)
a. Swing existe depuis la version 1.2 de JDK.
b. AWT veut dire Abstract Window Toolkit
c. On peut placer des composants AWT dans des containers Swing.
d. Les classes AWT sont obsoltes (deprecated).

8. Comment peut-on srialiser un objet? (0,5 pt)


a. On doit implmenter linterface Serializable dans la classe de lobjet.
b. On doit faire appel la mthode serializeObject() (qui est hrite de la classe Object) pour
lobjet. Non, cette mthode nexiste pas.
c. On doit appeler la mthode statique serialize(Object obj) de la classe Serializer avec
comme argument lobjet que lon veut srialiser. Non, cette classe nexiste pas.
d. On ne doit absolument rien faire car tous les objets peuvent tre par dfaut srialiss.

Page 3 / 4

Partie I : Pratique (11 points)


A laide des sockets construire un serveur qui reoit en entre une chaine de caractres (String) et en
retourne une copie o l'ordre de ses caractres a t invers.
On construira toutes les classes et interfaces ainsi qu'un client demandeur de ce service.

Chaine = salut

Inverse (salut) = tulas

Client

Serveur

1. tapes dtablissement dune communication ct client :


1.1 Crer un socket avec lappel systme socket(). (1pt)
1.2 Connecter le socket ladresse du serveur : appel systme : connect(). (2pts)
1.3 Envoyer et recevoir des donnes. (2pts)

2. tapes dtablissement dune communication ct serveur:


2.1 Crer un socket avec lappel systme socket().(1pt)
2.2 Rattacher le socket une adresse par lappel systme bind(). (1pt)
Pour un serveur socket sur internet, cette adresse est le numro de port du destinataire.
2.3 Se mettre en coute avec lappel systme listen().(1pt)
2.4 Accepter une connexion par lappel systme accept().(1,5 pt)
Cet appel bloque jusqua la connexion dun client.
2.5 Envoyer et recevoir des donnes. (1,5 pts)

Formateur

Directeur Pdagogique

Directeur de l'EFP

Mohamed LACHGAR

Page 4 / 4

Visa de La DRTA