mybatis配置獲取自增主鍵的操作方法
mybatis配置獲取自增主鍵
01 使用場景
- 當需要剛剛插入數據庫的數據對應的新增主鍵時,通過配置xml文件,使數據庫返回新增主鍵id,并把主鍵id與類參數對應
02 涉及配置
- 注解@TableId(type = IdType.AUTO):在類主鍵id通過配置實現插入數據庫時主鍵自增
public class XzsQuestionsAnswerCreate { @ApiModelProperty(value = "選項內容",required = true) @NotBlank(message = "選項內容不能為空") private String xzsOptionText; @ApiModelProperty(value ="選項標題",required = true) @NotBlank(message = "選項標題不能為空") private String xzsOptionTitle; @TableId(type = IdType.AUTO) @ApiModelProperty("標準答案id") private Long answerId; }
- mapper(數據操作層):正常插入接口
int saveQuestionAnswer(@Param("questionId")Long questionId, @Param("list")List<XzsQuestionsAnswerCreate> XzsQuestionsAnswerCreate);
- 關鍵部分:配置MySQL插入數據對應的返回值
<insert id="saveQuestionAnswer" useGeneratedKeys="true" keyProperty="list.answerId" keyColumn="xzs_question_options_id"> INSERT INTO xzs_question_options ( xzs_question_id, xzs_option_text, xzs_option_title ) VALUES <foreach collection="list" item="option" open="(" separator="), (" close=")"> #{questionId},#{option.xzsOptionText}, #{option.xzsOptionTitle} </foreach> </insert>
03 關鍵部分使用
字段 | 作用 |
---|---|
useGeneratedKeyss=“true” | 開啟主鍵自增返回設置 |
keyProperty | 類屬性 |
keyColumn | 數據庫字段 |
- keyProperty對應的是返回的自增主鍵對應的屬性,list中answerId屬性會在插入語句后被賦值
- mapper層函數中的返回值int,依舊是插入改變了多少行語句,不是自增主鍵
int saveQuestionAnswer(@Param("questionId")Long questionId, @Param("list")List<XzsQuestionsAnswerCreate> XzsQuestionsAnswerCreate);
keyColumn對應的是數據庫中的字段
到此這篇關于mybatis配置獲取自增主鍵的操作方法的文章就介紹到這了,更多相關mybatis獲取自增主鍵內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
spring的xml文件打開沒有namespace等操作選項的解決方案
這篇文章主要介紹了spring的xml文件打開沒有namespace等操作選項的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09