我有POJO类:
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 }
然后,我创建一张票证和一些地方:
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);
现在,我想将其保存到数据库:
session.insert("insertTicket", ticket); session.commit();
在MapperConfig.xml中,我这样写:
<insert id="insertTicket" parameterType="Ticket"> INSERT INTO tickets (cost, time) VALUES (#{cost}, #{time}) </insert>
如何以自动模式保存 列表位置 ?MyBatis可以为我保存吗?还是我需要使用 foreach 手动进行迭代,然后手动插入每个 地方 ?
谢谢你的帮助。
即使MyBatis能够支持相反的方向(即在查询过程中使用嵌套选择或联接填充列表),也没有自动模式将包含列表插入数据库。
根据此Google网上论坛讨论,您必须手动插入列表元素。