useGeneratedKeys="true" 表示数据插入数据库成功后,获取自动生成的主键值,如果只设置 useGeneratedKeys="true"
<insert id="insert" parameterType="UserPlanDO" useGeneratedKeys="true"> ,表示在成功插入之后,会从数据表的自增主键去获取生成的主键值。
keyProperty 用于设置将取到的主键值赋值给 UserPlanDO 的哪个属性,比如 keyProperty = "id", 表示设置给 id这个属性。
keyColumn 用于指定数据库table中的主键,如果自动生成的主键不是第一列的时候,则需要用 keyColumn 来表明哪个是主键;如果数据表第一列是自动生成主键,则不需要这个设置。
keyColume 可以设置成多个 自动生成的列 比如 keyColumn="id,user_id", 这两列必须是自动生成的,同时keyProperty 也必须设置两个对应的属性,用于存储获取到的两个自动生成列的值。