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

相关文章
相关标签/搜索