eu não entendi bem se vc quer implementar o controlador de transação ou implementar o uso de transações.
De qualquer forma a API de referencia é a Transaction API [url]http://java.sun.com/products/jta/[url] tanto se vc deseja implementar seu próprio controlador ou se vc deseja usar um pronto.
Para transacções distribuidas vc deve implementar um XAResource. Os bancos de dados disponibilizam XAConnection que implementa XAResource e deve ser usado em transações distribuidas. Nesse caso vc não precisa implementar nada de especial.