Mettre à jour un code java
Je dois mettre à jour un code en appliquant les règles suivantes:
Si une exception est levée par s.execute() alors appeler c.rollback()
et propager l'exception,sinon appeler c.commit()
Dans tous les cas ,c.closest() doit être appelée avant de quitter la méthode a(Service s,Connection c)
le code est le suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| public class A {
// doit executer le service avec les connections données
void a(Service s,Connection c) {
s.setConnection(c);
s.execute();
}
}
interface Service{
void execute() throws Exception;
void setConnection(Connection c);
}
interface Connection{
void commit();
void rollback();
}
public static void main(String[] args) {
Service service=new Service() {
public void execute()throws Exception{
System.out.println("execute");
}
public void setConnection(Connection c) {
System.out.println("setConnection");
}
};
} |
En suivant ces instructions j'ai donc complété en faisant le code suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| void a(Service s,Connection c) throws Exception {
s.setConnection(c);
s.execute();
c.rollback();//doit appeler rollback() si une exception est levée et propager l'exception
c.commit();//Sinon appeler c.commit()
c.close();//dans tous les cas appeler c.close()
}
}
interface Service{
void execute() throws Exception;
void setConnection(Connection c);
}
interface Connection{
void commit();
void rollback();
} |
j'ai suivi les instructions mais je ne sais pas si c'est juste
Qu'est ce que vous en pensez svp?