Невозможно выбрать между Hibernate и iBatis только с этой информацией. Количество объектов здесь не важно (на самом деле мой подход окупается больше, если объектов много). Более уместна сложность графов объектов, которыми манипулируют в ваших сервисных методах, необходимость обнаружения «грязных» дочерних объектов и т. Д. IBatis более легкий / простой / низкоуровневый, чем Hibernate / JPA, и это всегда имеет свои преимущества ( легче понять и поддерживать; меньше сюрпризов или таинственных ошибок) и недостатков (требуется больше программного кода, меньше мощности и возможностей, которые трудно реализовать в сложных случаях использования)

я есть очень простой объектный граф, который я хочу сохранить в базе данных, используя MyBatis. Если я создаю новый граф объектов (BatisNode с двумя деталями), как мне написать код, чтобы убедиться, что дочерние объекты созданы? Вот подробности:


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.
}

Схема:

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)
);

Mapper:

    
        
INSERT INTO node (
  name
)
SELECT #{name};
        

        
SELECT node_id id,
name
FROM node
WHERE node_id=#{id};
        

        
        


Ответы на вопрос(1)

Ваш ответ на вопрос