Bom, já faz um bom tempo que não ando por aqui, mas estou com uma dúvida cruel...
Seguinte, Eu tenho um objeto pessoa e dentro dele um objeto endereco.
Pessoa
|_ $nome
|_ $endereco
|_$codPessoa
|_$estado
|_$municipio
Essa estrutura, por exemplo. Ai eu chamo o DAO de pessoa e insiro a pessoa, verifico se aquela pessoa tem endereço e chamo o DAO de endereço, até aqui tudo massa, mas suponhamos que na hora de inserir o endereço ele dê erro, como eu faço para desfazer a inserção??? Sei que existe o rollback, mas para esse exemplo aqui talvez sirva, mas e para um objeto que tem 6 objetos dentro? Múltiplos rollbacks, múltiplas inserções ou deletar o objeto pai pelo id (Sabendo que ficariam "buracos" no BD por essa deleção), qual seria a melhor solução?