mybatis insert 返回主键问题

學楽 发布于 2017/01/17 21:59
阅读 1K+
收藏 0

我想问我不给mybatis传对象,只传参数,如何让mybatis返回主键?

dao:

int addUser(String name, String age);

mapper.xml

<insert id="addUser" useGeneratedKeys="true" keyProperty="id">

insert into t_user(name,age) values(#{0}, #{1})

</insert>

在其他地方调用此方法,可以成功调用

但是无法获取主键。

int id = userDao.addUser("jjjj","12");

我的目的是dao return出来的就是主键,不想要成功状态和数量

谁懂这个吗?


我以前使用ibatis时直接返回的就是主键,在mybatis里如何配置成直接返回主键?

加载中
2
培公啊
培公啊

主键不是作为insert的返回值,而是返回到插入对象的id属性里

User u = new Uesr("name","age");
userDao.addUser(u);
System.out.print(u.getId());



1
夜苍狼
夜苍狼
为啥不写正常的代码
0
青苗
青苗
来玩  Mybatis 增强工具包 Mybatis-Plus  各种主键策略,自动处理省心。

0
空香沾手
空香沾手
<insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chenzhou.mybatis.User">  
    insert into user(userName,password,comment)  
    values(#{userName},#{password},#{comment})

	</insert>


userDao.addUser(u); System.out.print(u.getUserId());
0
JOECHOW
JOECHOW
说了不传对象,只传参
0
anlen_gzz
anlen_gzz
返回值插在对象里了不是返回值,返回值只有0(插入失败),1(插入成功)你id用对象获得
0
學楽
學楽
你们所有人说的都是一个东西,你们也都不会啊
丶寒羞
丶寒羞
他们的意思就是你这么写传不回来
0
蓝水晶飞机
蓝水晶飞机

你的用法很奇怪,为啥不用实体类,返回的主键就自动更新到实体类的id字段了啊


0
刘昌鑫
刘昌鑫

用过.net版本的  不知道你能不能用,,

<insert id="xxx" >

    <selectKey resultClass="int" type="post" property="返回的主键字段"> select @@IDENTITY as value       </selectKey>

</insert>

返回顶部
顶部