Foros del Web » Programación para mayores de 30 ;) » Java »

Modificar registro JPA

Estas en el tema de Modificar registro JPA en el foro de Java en Foros del Web. Buen dia a todos, Quisiera saber si alguno tiene idea de como puedo modificar el registro de una base de datos con jpa. Se que ...
  #1 (permalink)  
Antiguo 14/10/2012, 23:31
 
Fecha de Ingreso: marzo-2012
Ubicación: Colombia
Mensajes: 13
Antigüedad: 12 años, 7 meses
Puntos: 2
Modificar registro JPA

Buen dia a todos,

Quisiera saber si alguno tiene idea de como puedo modificar el registro de una base de datos con jpa.

Se que para guardarlos basta con

manager.persist();

Para eliminarlo

manager.remove();

Pero para modificarlo como se hace?

De antemano gracias por su colaboracion
  #2 (permalink)  
Antiguo 15/10/2012, 21:48
 
Fecha de Ingreso: marzo-2012
Ubicación: Colombia
Mensajes: 13
Antigüedad: 12 años, 7 meses
Puntos: 2
Respuesta: Modificar registro JPA

Bueno para el que lo necesite se hace asi

1.Coges el objeto y lo imprimes en un formulario o algo asi
2.Debes tenerlo con su respectivo managed bean para que se actualicen las propiedades
3.Mandas el objeto modificado a tu base de datos asi

manager.merge(miUsuario);

Aclarar que el manager viene de

EntityManager manager;

Y ya esta!! se ha actualizado tu registro(objeto)
  #3 (permalink)  
Antiguo 19/10/2012, 12:47
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 13 años, 2 meses
Puntos: 29
Respuesta: Modificar registro JPA

Otra forma más sencilla es obtener el objeto (con find), y editar los datos directamente. Ejemplo:


Código JAVA:
Ver original
  1. //Suponemos que estamos dentro de un contexto de transaccion
  2. em.getTransaction().begin();
  3.  
  4. MiClase miObjeto = em.find(MiClase.class, idObjeto);
  5. miObjeto.set(...);
  6.  
  7. em.getTransaction().commit();
  8. //A partir de aqui tu objeto se ha actualizado.
  9. em.close();

Etiquetas: jpa, modificar, registro
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:21.