useGeneratedKeys失效的情況之一 —— mybatis中表主鍵爲自定義而非自增時,insert(Entity en)後 en.getId() == null

useGeneratedKeys失效的情況之一 —— mybatis中表主鍵爲自定義而非自增時,insert(Entity en)後 en.getId() == null

【現象】:mybatis中表主鍵爲自定義而非自增時,insert(Entity en)後 en.getId() == null

【原因】:當主鍵用戶自定義提供,不再由數據庫自動生成時。在數據入庫前,用戶已知主鍵,那麼mybatis 不插手和妨礙。如果在insert(Entity en) 前,用戶自己已填充了id,那麼能取得;若在insert(Entity en) 前未設值,而是依靠執行時,通過其他字段賦值,那就取不到id,也就是說 insert(Entity en) 執行後,不會自動將id放入 Entity 中,要想取得id值,直接取設值的字段值就好了。

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