mybatis 不能獲取到自增的id

mybatis獲取新增記錄的id是比較常見的操作. 簡單配置即可達到目的,如下:

<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
      SELECT LAST_INSERT_ID()
</selectKey>

今天使用的過程中發現以上的配置不能獲取到新增id, 對比了下之前的代碼, 主要是在mapper接口中對參數添加了@Param("record")註解,  mapper接口如下: 

int insert(@Param("record") Wechat record, @Param("modelName") String modelName);

解決方法, 就是在mapper.xml的keyProperty處也添加上變量的別名, 如下: 

<selectKey keyProperty="record.id" order="AFTER" resultType="java.lang.Long">
    SELECT LAST_INSERT_ID()
</selectKey>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章