Транзакция будет откатывать все, пока вы «касаетесь» обеих ваших сущностей одним и тем же сохранением, обновлением или удалением, однако вы говорите, что они в любом случае не связаны друг с другом, и поэтому я предполагаю, что у вас есть выполнить 2 сохраняется, и это не будет в той же области транзакции.
Вариант 1
Вы можете сделать что-то легкое и уродливое для этого, в JPA есть @PrePersist и @PreUpdate, чтобы вы могли убедиться, что все с предыдущим сохранится. Это создаст плохую кодовую базу и вызовет нежелательные зависимости.
Вариант 2
Вы можете просто иметь связь между пользователем и адресом, что является естественным.
Вариант 3
Третий вариант - использовать Управляемая компонентом транзакция