tengo clases POJO:Persistir colección de objetos con MyBatis
class Ticket {
private int id;
private double cost;
private Date time;
private List<Place> places;
// Getters and setters here
}
class Place {
private int row;
private int place;
// Getters and setters here
}
A continuación, se crea un boleto y algunos lugares:
Ticket ticket = new Ticket();
ticket.setCost(58.7);
ticket.setTime(new Date());
Place place1 = new Place();
place1.setRow(1);
place1.setPlace(2);
ticket.addPlace(place1);
Place place2 = new Place();
place2.setRow(3);
place2.setPlace(4);
ticket.addPlace(place2);
y ahora quiero que lo guarde en DB:
session.insert("insertTicket", ticket);
session.commit();
En MapperConfig.xml Escribo estas líneas:
<insert id="insertTicket" parameterType="Ticket">
INSERT INTO tickets (cost, time) VALUES (#{cost}, #{time})
</insert>
¿Cómo puedo guardar Enumerar lugares en modo automático? ¿MyBatis puede guardarlo para mí? O necesito iterar manualmente con foreach e insertar cada Place a mano?
Gracias por cualquier ayuda.
Hm. No es bueno ... Creo que MyBatis es más inteligente. ¿Existe ORM para Java que pueda hacer esta operación por mí? –
MyBatis realmente _es_ inteligente. Pero no está destinado a ser un ORM. Solo se trata de una capa delgada alrededor de JDBC. Si esta funcionalidad es un requisito, entonces puede buscar un ORM como Hibernate http://www.hibernate.org/ o EclipseLink http://www.eclipse.org/eclipselink/. – vanje
Gracias, leeré al respecto. –