MyBatis+MySQL 返回插入的主键ID

来源:互联网 发布:做菜软件 编辑:程序博客网 时间:2024/06/05 18:05

需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值。

方法:在mapper中指定keyProperty属性,示例如下:
JurisdictionMapper.xml

<!-- 添加一条权限 -->    <insert id="addJurisdiction" useGeneratedKeys="true" keyProperty="jurisdiction.id">        INSERT INTO tb_jurisdiction(uuid,organizationSet,userManage,intervieweeManage,facilityManage,interceptManage,dataMaintaining,informationManage,logManage)         VALUES (#{jurisdiction.uuid},#{jurisdiction.organizationSet},#{jurisdiction.userManage},#{jurisdiction.intervieweeManage},#{jurisdiction.facilityManage},         #{jurisdiction.interceptManage},#{jurisdiction.dataMaintaining},#{jurisdiction.informationManage},#{jurisdiction.logManage})    </insert>

java bean

private static final long serialVersionUID = 751672254971015482L;    private int id;    private String uuid;    private int organizationSet;    private int userManage;    private int intervieweeManage;    private int facilityManage;    private int interceptManage;    private int dataMaintaining;    private int informationManage;    private int logManage;    public Jurisdiction(){        this.uuid = UUIDUtil.createUUID();        this.organizationSet = 0;        this.userManage = 0;        this.intervieweeManage = 0;        this.facilityManage = 0;        this.interceptManage = 0;        this.dataMaintaining = 0;        this.informationManage = 0;        this.logManage = 0;    }

java JurisdictionMapper

    /**     * 添加一条权限信息     * @param jurisdiction     */    public int addJurisdiction(@Param("jurisdiction")Jurisdiction jurisdiction);

测试:

public class Test {    @Autowired    private JurisdictionMapper jurisdictionMapper;    @org.junit.Test    public void test(){        Jurisdiction jurisdiction = new Jurisdiction();        int row = jurisdictionMapper.addJurisdiction(jurisdiction);        System.out.println(row);                    //插入的数目        System.out.println(jurisdiction.getId());   //返回的主键    }}

这里写图片描述

原创粉丝点击