Inserindo objetos filho no MyBatis
Eu tenho um gráfico de objeto muito simples que desejo armazenar em um banco de dados usando o MyBatis. Se eu criar um novo gráfico de objeto (um BatisNode com dois detalhes), como escrevo código para garantir que os objetos filho sejam criados? Aqui estão os detalhes:
public class BatisNode {
protected int id;
protected List details;
protected String name;
//Constructor and getters.
}
public class BatisNodeDetail {
protected int id;
protected BatisNode parent;
protected String name;
//Constructor and getters.
}
Esquema:
CREATE TABLE node ( node_id int auto_increment primary key, name varchar(255) ); CREATE TABLE node_detail( node_detail_id int auto_increment primary key, name varchar(255) );
Mapeador:
INSERT INTO node ( name ) SELECT #{name}; SELECT node_id id, name FROM node WHERE node_id=#{id};