Diferencia entre los métodos save y saveOrUpdate hibernate [duplicate]

Esta pregunta ya tiene una respuesta aquí:

¿Cuáles son las diferencias entre los diferentes métodos de ahorro en Hibernate? 10 respuestas

Normalmente, había leído que el método save () genera un nuevo identificador para el objeto y solo el disparoINSERTAR y guárdelo, no lo actualiza, mientras que el método saveOrUpdate () puedeINSERTAR oACTUALIZAR grabar.

Pero según mi experiencia, aquí puedo explicarlo mejor mediante un código de muestra,

Supongamos que hayClase A, y encuentro récord deTabla a por

A a = getHibernateTemplate.findById(7);

Así que ahora tengo un objeto persistente,

Y ahora estoy tratando de guardar el registro con el método de guardar simplemente modificando algunos de los campos,

Ahora estoy disparando,

getHibernateTemplate.save(a);

Así que soloactualizar registro existente, pero según mi conocimientodebe crear nuevo registro.

Puedo estar equivocado acerca de las cosas certian, ¿puede alguien aclarar esto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta