public class Parent { private Set children = new HashSet(); .... public boolean removeChild(Child child) { return children.remove(child); } .... } .... Parent parent = // load parent with children Child childToDelete = // find child to remove parent.removeChild(childToDelete); // commit transaction