说明:在系统实现中,我们经常会需要在一个页面进行插入多张表的操作。这些表一般都是依靠主表id来进行关联,这时候我们就需要知道主表添加数据之后,新添加的那条数据主键id是什么,由此来给关联表进行关联,那如何来实现呢?我们可以用mybatis来实现该操作
1.数据表之间的关联
人脸数据表表设计如下:
人脸图片表表设计如下:
2.由上图可知,该两张表是靠人脸数据表的主键id进行关联的。
那么我如果在同一个页面实现两张表添加操作,要怎么实现呢?如下图所示:
3.这个时候我们就需要知道人脸数据表新添加的主键id,在把该主键id赋值给人脸图片表。首先我们需要在mapper.xml文件中添加两个属性值,“useGeneratedKeys”和“keyProperty”,其中“useGeneratedKeys ”取值范围true|false 默认值是:false。它的含义是设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中,“keyProperty”是所对应的javabean中的主键id属性名称,如下图所示:
4.最后在控制层进行该方法的调用,如下图所示:
注意:不要直接去接收方法返回的值,要用添加的实体类id属性去给需要的关联类实体赋值!!!