Je vais avoir du mal à ne pas me répéter dans un programme Java, je travaille en ce moment.
Dites, j'ai besoin de déclarer un grand nombre de méthodes qui, fondamentalement, sont structurés de la manière suivante:
public SomeEntity doSomething (String someAttribute, String anotherAttribute) {
EntityManager em = this.createEntityManager();
EntityTransaction tx = null;
try {
/*
* ... independent logic ...
*/
tx = em.getTransaction();
} catch (RuntimeException e) {
if (tx != null && tx.isActive()) {
tx.rollback();
}
throw e;
} finally {
em.close();
}
return something;
}
Le corps de la méthode de toutes les méthodes doit contenir les thèses des éléments pour la gestion des ressources.
Les "indépendants" logique elle-même sera assez complexe, afin de mettre l'instruction try/catch dans une méthode distincte de ne pas vraiment travailler.
Je veux éviter de répéter ce code. Quelles sont les meilleures pratiques à appliquer dans ces situations?