赞
踩
mybatis插入数据返回主键自增值需要在insert节点使用
useGeneratedKeys="true" keyProperty="userId"
代码:
- <insert id="insert" parameterType="com.User" useGeneratedKeys="true" keyProperty="userId">
- insert into user (user_id,name,status)
- values (#{userId,jdbcType=BIGINT}, #{name,jdbcType=VARCHAR}, #{status,jdbcType=TINYINT})
- </insert>
使用@Insert注解方式:
-
-
- @Insert("insert into t_user (username,password,valid,create_time) values (#{username},#{password},#{valid},#{createTime})")
- @Options(useGeneratedKeys=true, keyProperty="id", keyColumn="id")
- int add(User user);
Java 代码中返回的uid需要从对象中取:
- User user = new User();
- user.setName(李四);
- user.setStatus(0);
-
- int result = userDao.insert(user);//这里的result返回的只是受影响的数据行数,并不是主键值
- int uid = user.getId();//这里java自动把新建的用户ID赋值给了user对象的主键,所以可以直接用user对象获取主键值
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。