Indeed, Mark is very correct.
The Hibernate API JavaDoc provides some further information as well:
public void saveOrUpdate(Object object) throws HibernateException
Either save(Object) or update(Object) the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking). This operation cascades to associated instances if the association is mapped with cascade="save-update".
Hibernate JavaDoc for org.hibernate.Session - saveOrUpdate -Cameron McKenzie