Sto realizzando per hobby una piccola applicaziona Java stand-alone.
A livello di back-end la mia applicazione ha la seguente stratificazione
Business
--------
DAO
-------
DB MySql
Per l'interazione con il db uso Hibernate.
Il mio problema è il seguente: gestire le transazioni a livello di business. Mi spiego meglio.
Supponiamo che un metodo di business faccia due o più chiamate al DAO. Ogni operazione del DAO è gestita come transazione da Hibernate. Io però vorrei che anche il metodo di business venga considerato una transazione, indipendentemente se fa chiamate ai DAO o no.
Se ad esempio il mio metodo di business fa:
dao.faiQualcosa();
dao.faiQualcheAltraCosa();
io vorrei che queste due operazioni o vengono fatte tutte due o nessuna.
So che per esempio gli EJB consentono di realizzare questo.
Non trovandomi su un application-server, avevo pensato di orientarmi verso Spring, ma pure leggendo le reference, non ho capito molto su come gestire le transazioni.
Spero di aver chiarito il problema, grazie per l'aiuto.

Rispondi quotando