1. 程式人生 > >SSM配置Mybatis實現自動獲取插入資料的自增id至目標物件中

SSM配置Mybatis實現自動獲取插入資料的自增id至目標物件中

Mybatis配置:

<!-- 設定: 將插入資料的主鍵返回並新增到Contents物件中-->
  <insert id="insert" parameterType="com.contentsale.pojo.Contents" >
   <!-- keyProperty:將查詢到的主鍵值設定到parameterType物件的哪個屬性中 -->  
        <!-- order:SELECT LAST_INSERT_ID()語句的執行順序(相對於insert語句來說的執行順序) -->  
        <!-- resultType:指定SELECT LAST_INSERT_ID()語句的結果型別 -->  
        <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">  
            <!-- SELECT LAST_INSERT_ID():得到剛insert到資料表中的記錄的主鍵值,只適用於自增主鍵 -->  
            SELECT LAST_INSERT_ID()  
        </selectKey>  
    insert into contents (id, price, title, 
      pic, summary, detail
      )
    values (#{id,jdbcType=INTEGER}, #{price,jdbcType=DOUBLE}, #{title,jdbcType=VARCHAR}, 
      #{pic,jdbcType=VARCHAR}, #{summary,jdbcType=VARCHAR}, #{detail,jdbcType=LONGVARCHAR}
      )
  </insert>


相關推薦

SSM配置Mybatis實現自動獲取插入資料id目標物件

Mybatis配置: <!-- 設定: 將插入資料的主鍵返回並新增到Contents物件中--> <insert id="insert" parameterType="com.c

Mysql和Mybatis獲取插入資料主鍵的值

Mysql 首先就是mysql獲取最近插入資料id的查詢方法 mysql為我們提供了查詢最近插入自增主鍵ID的值 獲取剛插入的自增長id的值 insert into user (username,age,address) VALUES ('abc',18

Mybatis 實現Mysql批量插入資料,判斷資料是否存在

常見插入資料的SQL insert into 插入資料庫時會檢查主鍵是否存在,存在會報錯 replace into 替換資料庫記錄,需要表中有主鍵或者unique索引,如果資料庫已存在的資料,會先刪除該資料然後新增。不存在的資料效果和insert into

如何獲取MyBatis通過Map插入資料後如何獲取返回的ID

<insert id="addXX" parameterType="java.util.Map" useGeneratedKeys="true" keyProperty="XX_Id" > </insert>防止忘記,記錄一下,paramete

Oracle使用Mybatis實現List批量插入資料(轉載)

專案中會遇到這樣的情況,查詢出多條記錄(一個List物件集合),一次性要插入多條資料到資料庫中,下面就拿Data類來看看兩種插入方法: 方法一:   Mybatis本身只支援逐條插入,比較笨的方法,就是遍歷一個List,迴圈中逐條插入,比如下面這段程式碼 [java] view plain co

linq2db Sqlite Insert之後獲取插入增量ID

插入 tac pre pan his blog log bject tex 方法為: public static object InsertWithIdentity<T>(this IDataContext dataContext, T obj); 例:

MySql獲取插入記錄主鍵ID

現在這種場景偏多,獲取的方式也很多。像MyBatis和Hibernate都有方式去獲取該值。 現在簡單講講MyBatis是獲取插入記錄自增主鍵ID值的。 public class Stu { private int id; private S

Mysql獲取插入id的三種方法

我們在寫資料庫程式的時候,經常會需要獲取某個表中的最大序號數, 一般情況下獲取剛插入的資料的id,使用select max(id) from table 是可以的。但在多執行緒情況下,就不行了。 下面介紹三種方法 (1) getGeneratedKeys()方法: 程式

MyBatis支援批量插入獲得id

MyBatis以前不支援批量插入獲取自增id,於是有些需求就難以實現,插入一批資料但是都需要知道id的場景(比如需要將id記錄到日誌表)就只能換成一個個插入,一定程度上降低了效率。 之前有大神分析過MyBatis原始碼,並且給出了一種解決方案(稍微有點麻煩),詳見: My

mybatis獲取插入資料自動生成的主鍵id

mapper檔案: void insert(Map<String, Object> params); mybatis的xml如下: <insert id="insert" parameterType="java.util.Map" useGen

mybatis 在oracle資料庫插入資料獲取ID sequence序列

在oracle中sequence就是序號,每次取的時候它會自動增加。sequence與表沒有關係。 Create Sequence 首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE許可權。 建立語句如下: CREATE SEQUEN

SSM利用mybatis-generator自動生成程式碼-表對應的類和配置檔案

生成程式碼需要的檔案和jar包: 下載地址:http://download.csdn.net/detail/windflybird/9822991 <?xml version=

Mybatis——【親測】mybatis使用註解方式插入資料獲取增長的主鍵值

自己踩過的坑,查了好久,終於發現解決方法。 步驟有三: 1. 寫SQL,但不要自己插入主鍵值 2. 配置@Options(useGeneratedKeys=true, keyProperty="物

mybatis 在oracle資料庫插入資料獲取ID

就是建立一個SEQUENCE,通過它來獲取自增ID ① 在資料庫中操作: CREATE SEQUENCE CONFIG_KEYWORD_GATHER_SEQ;在XXXMapper.xml中程式碼:&l

mybatis 在oracle資料庫插入資料獲取ID sequence序列

在oracle中sequence就是序號,每次取的時候它會自動增加。sequence與表沒有關係。 Create Sequence 首先要有CREATE SEQUENCE或者CREATE

mybatis獲取mysql插入主鍵配置方法

使用selectKey的方式獲取主鍵,相當於呼叫了MySql的LAST_INSERT_ID()函式,意思是查詢最後一次插入的ID,相當於執行了兩條語句。 具體方法:改*mapper.xml檔案的如下位置:(驗證過有效) 另外一種方式參考如下圖: 兩種方式的主鍵獲取方式都

MyBatis 批量插入獲取 id 問題解決

插入 lis foreach myba 如果 .cn bsp collect images 問題: 通過 MyBatis 進行批量插入時,如果我們想獲取插入對象所對應的主鍵 id,做法是直接在 <insert> 標簽中直接加入 useGeneratedKeys

Pycharm WebStorm 配置 babel 實現自動編譯 ECMAScript6 (es6) 文件

pycharm webstorm 配置 所需基礎node.jsnmp開始1、首先新建一個空項目,減少幹擾更快的看到配置效果。2、在項目中創建一個 man.js 文件 。進入設置:「 File Settings Languages&Frameworks JavaScript 」將 Ja

Redis 部署主從哨兵 C#使用,實現自動獲取redis緩存 實例1

tor 實例 註意 不能 arc ini read 沒有 ilove 源碼示例下載鏈接: https://pan.baidu.com/s/1eTA63T4 密碼: un96 實現目標:windows 下安裝 一臺master服務 一臺salve redis服務器 並且

springmvc實現整合mybatis實現簡單的讀取資料

  我這裡使用的是Mapper動態代理開發,另外使用了逆向工程,為我建立實體類和mapper介面呢mapper對映檔案 1,配置web.xml,配置spring監聽器,springmvc的servlet和對請求的攔截 2,配置springmvc.xml,開啟註解,配置包掃描,配置檢視解析器