MySQL和MSSQL返回主键方法

在personMap.xml中

<insert id="addPerson" parameterType="orm.Person" keyProperty="id" useGeneratedKeys="true">
    insert into Person (name,age,gender) values (#{name},#{age},#{gender})
</insert>

调用插入方法,将mybatis返回的自动增长ID自动返回给id属性

复制代码
SqlSession session =DBUtils.getSqlSession();
Person p=new Person();
p.setName("caoyc");
p.setAge((byte)18);
p.setGender("");
System.out.println(session.insert("orm.personMapper.addPerson",p));;
session.commit();
session.close();
System.out.println(p.getId());
复制代码

通过实体对象p.getId():就可以获取插入后该记录的id了

 

Oracle数据

复制代码
<insert id="addPerson" parameterType="orm.Person" >
    <selectKey resultType="java.long.Integer" keyProperty="id" order="BEFORE">
        select  idauto.nextval from dual
    </selectKey>
    insert into Person (id,name,age,gender) values (#{id},#{name},#{age},#{gender})
</insert>
复制代码
posted @ 2017-05-09 16:42  ー個亽の江湖  阅读(218)  评论(0编辑  收藏  举报