mybatis 通用mapper返回插入主鍵

查看地址:http://git.oschina.net/free/Mapper/blob/master/wiki/mapper3/3.Use.mdgit

 

3.主鍵策略(僅用於insert方法)

通用Mapper還提供了序列(支持Oracle)、UUID(任意數據庫,字段長度32)、主鍵自增(相似Mysql,Hsqldb)三種方式,其中序列和UUID能夠配置多個,主鍵自增只能配置一個。sql

因爲MySql自增主鍵最經常使用,因此這裏從最簡單的配置方式開始。數據庫

1.@GeneratedValue(generator = "JDBC")

@Id
@GeneratedValue(generator = "JDBC")
private Integer id;

這會令 MyBatis 使用 JDBC 的 getGeneratedKeys 方法來取出由數據庫內部生成的主鍵(好比:像 MySQL 和 SQL Server 這樣的關係數據庫管理系統的自動遞增字段)。
這種狀況對應的xml相似下面這樣:app

<insert id="insertAuthor" useGeneratedKeys="true" keyProperty="id">
    insert into Author (username,password,email,bio)
    values (#{username},#{password},#{email},#{bio})
</insert>

這樣執行通用的 mapper 就能夠 返回主鍵值了

 

例子:spa

@Id
    @GeneratedValue(generator = "JDBC")
   // @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;.net

 

ProjectUserMapper projectUserMapper = 
                (ProjectUserMapper) context.getBean("projectUserMapper");
        
        ProjectUser projectUser=new ProjectUser();
        projectUser.setFlag(true);
        projectUser.setName("test");
        projectUser.setPassword("password");
        int a=projectUserMapper.insert(projectUser);
        System.out.println("a的結果》》"+a);
        System.out.println(">>>id插入後的》》"+projectUser.getId());code

這樣都是能夠獲取到 插入的  主鍵id 的 xml

相關文章
相關標籤/搜索