1. 程式人生 > >Mybatis generator 自動生成程式碼時 ,insert如何返回主鍵值

Mybatis generator 自動生成程式碼時 ,insert如何返回主鍵值

mvn mybatis-generator:generate

如果要讓generator自動新增該功能,可以如下配置:


<!-- tableName:用於自動生成程式碼的資料庫表;domainObjectName:對應於資料庫表的javaBean類名;不需要生成Example類 -->
        <table schema="" tableName="ACT_SecurityBlockLog" domainObjectName="BlockLog"
               enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false"
               selectByExampleQueryId="false">
            <property name="useActualColumnNames" value="true"/>
            <generatedKey column="id" sqlStatement="MySql" identity="true"/>

        </table>

或者手動增加:

<insert id="insert" parameterType="Activity" keyProperty="id"
     keyColumn="ID" useGeneratedKeys="true"
>

主鍵值有  物件.getId()獲得

方法只返回成功影響的行數:1

在insert裡面加入selectKey標籤就可以了. 一般都是返回的int型別.對應資料庫是自增長欄位.

要注意的是: ibatis會直接返回int值. Mybatis則把int值包裝在引數物件裡面.

public int insert(User user) {

//ibatis方式.

int result = UserMapper.insert(user);

return result;

//Mybatis方式

user = UserMapper.insert(user);

return user.getId();

}

還要注意的是資料庫型別不一樣,生成ID的策略也不一樣. 可以對selectKey新增屬性(名字忘記了), pre---先生成ID. post---後生成ID. default是post.

另一種返回主鍵值得方法:

<insert id="insertSelective" parameterType="xxxx" >
    <selectKey resultType="java.lang.Integer" keyProperty="ID" order="AFTER" >
      SELECT LAST_INSERT_ID()
    </selectKey>


    insert into XXXX

最終結果是 mapper方法返回值為主鍵ID,同時物件ID值也為主鍵ID

相關推薦

Mybatis generator 自動生成程式碼 insert返回

mvn mybatis-generator:generate 如果要讓generator自動新增該功能,可以如下配置: <!-- tableName:用於自動生成程式碼的資料庫表;domainObjectName:對應於資料庫表的javaBean類名;不需要生成Ex

Mybatis generator 自動生成程式碼 insert如何返回

mvn mybatis-generator:generate 如果要讓generator自動新增該功能,可以如下配置: <!-- tableName:用於自動生成程式碼的資料庫表;domainObjectName:對應於資料庫表的javaBean類名;不需要生成Ex

mybatis generator自動生成程式碼生成insert 而沒有其他的

mybatis框架提供了非常好用的逆向工程外掛,但是在使用過程中會有很多問題。 我在使用中就遇到了只生成insert和insertSeletive方法,而不生成其他根據primary key查詢更新刪除的方法。 解決方案: 1.檢查資料庫中的表是否有主鍵,如果沒有主鍵是不會生成類似selectByPri

mybatis generator自動生成程式碼將blob屬性變成String型別當出現亂碼的處理方法

1.blob屬性變成String型別,需要在配置檔案中的table元素中增加columnOverride元素,詳情如下例子: <table tableName="paas_conf_metadata"> <generatedKey column="ID"

通過mybatis添加數據記錄如何返回

通過mybatis添加數據記錄時如何返java private SqlSession session = null; @BeforeClass public void init() throws IOException { // SqlSession--->SqlS

MyBatis Generator自動生成程式碼小工具下載原始碼即可使用繼承了通用Mapper

簡單介紹下專案結構: BaseEntity:生成的實體類可繼承父類,此BaseEntity中可寫入公共欄位,如:id(主鍵),updateBy(修改人)updateTime(修改時間),該類應與實際專案中用的BaseEntity保持資料一致。 MyMapper:自定義

mybatis使用generator自動生成程式碼的型別轉換

使用mybatis的generator自動生成程式碼,但是oracle資料庫中number(6,2)總是自動轉成BigDecimal,我想要轉成的是float型別 這樣就寫了一個型別轉換器,需要繼承JavaTypeResolver介面 然後在mybaties配置檔案gene

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

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configu

SpringBoot入門篇--整合mybatis+generator自動生成程式碼+druid連線池+PageHelper分頁外掛

我們這一一篇部落格講的是如何整合Springboot和Mybatis框架,然後使用generator自動生成mapper,pojo等檔案。然後再使用阿里巴巴提供的開源連線池druid,這個連線池的好處我就不說了,集合了所有連線池的好處,並且還提供了監控等功能,加大了可擴充套件性等等。   1.&

SpringBoot---整合mybatis+generator自動生成程式碼+連線池+分頁

如何整合Springboot和Mybatis框架,然後使用generator自動生成mapper,pojo等檔案。然後再使用阿里巴巴提供的開源連線池druid,這個連線池的好處我就不說了,集合了所有連線池的好處,並且還提供了監控等功能,加大了可擴充套件性等等。 idea 新建sp

SpringBoot 整合 Mybatis Generator自動生成程式碼

Mybatis是目前主流的ORM框架,相比於hibernate的全自動,它是半自動化需要手寫sql語句、介面、實體物件,後來推出的Generator自動生成程式碼,可以幫我們提高開發效率。 本文目的:SpringBoot 整合 Mybatis Generato

十九、Spring boot中整合mybatis-generator自動生成程式碼

(一)新增外掛 <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugi

Spring Boot整合mybatis generator自動生成程式碼外掛

其實MyBatis Generator並不需要spring boot環境,只需要自己寫一個main方法執行即可。本文主要介紹使用maven外掛的方式。   注:本文采用的MyBatis Generator版本為:1.3.6   一、MyBatis Generato

javaweb專案:使用者(登入和登出)實現 SSM框架(mybatis-generator自動生成程式碼

SSM框架的搭建環境(Spring,SpringMVC,Mybatis) 使用工具:maven、idea、tomcat用的是8、jdk版本1.8 一、整個專案的結構: 使用者模組流程 pom.xml -> web.xml -> db->model

idea+springboot2.0+maven+mybatis+mybatis generator自動生成程式碼

    最近嘗試自己搭一主流的springboot框架,springboot全家桶相對於springmvc來說,少了很多的配置,並且內建tomcat,打包即可釋出,適合輕量級系統開發,一下是配置的具體的過程。 1、jdk1.8 2、填寫GroupId和Artifact

使用Mybatis Generator自動生成程式碼

看過前幾篇關於Mybatis的文章可以發現,在DAO層做資料庫互動時,存在兩中方式。一種為使用註解手寫mapper.xml,這種方式比較複雜,手寫xml檔案相當麻煩。另一種較手寫mapper.xml檔案簡單一些,就是使用註解(@Select、@Update、@Insert、@

使用mybatis-generator自動生成實體類介面實現類和Mapper對映配置檔案

使用mybatis-generator生成實體類,DAO實現類和Mapper對映         Mybatis-generator外掛依據Java實體類和資料庫表的對映關係,將實體類的屬性和資料表中列名一一對應,執行後自動生成model,DAO和Mapper

利用mybatis-generator自動生成程式碼

mybatis-generator有三種用法:命令列、eclipse外掛、maven外掛。個人覺得maven外掛最方便,可以在eclipse/intellij idea等ide上可以通用。 下面是從官網上的截圖:(不過官網www.mybatis.org 最近一段時間,好象已

Mybatis Generator 自動生成程式碼和常見的問題

1.mybatis generator是mybatis提供的用來通過配置檔案自動生成pojo類和對pojo類的增刪改查的實現的一個工具。 2.兩種方式來使用,第一種就是利用配置檔案和mybatis提供的jar包來生成,第二種是利用eclipse整合mybatis Gener

0101_利用mybatis-generator自動生成程式碼

利用mybatis-generator自動生成程式碼 mybatis-generator有三種用法:命令列、eclipse外掛、maven外掛。個人覺得maven外掛最方便,可以在eclipse/intellij idea等ide上可以通用。 下面是從官網上的截圖:(不過官網www.myba