mybatis做insert操作的时候 怎么才能返回插入的那条数据的id?

来源:互联网 发布:淘宝特惠 编辑:程序博客网 时间:2024/06/02 15:50

mysql:

方法:在mapper中指定keyProperty属性,示例如下: 
Xml代码 收藏代码

<insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="com.chenzhou.mybatis.User">      insert into user(userName,password,comment)      values(#{userName},#{password},#{comment})  </insert> 
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

如上所示,我们在insert中指定了keyProperty=”userId”,其中userId代表插入的User对象的主键属性。

User.javapublic class User {      private int userId;      private String userName;      private String password;      private String comment;      //setter and getter  }   UserDao.javapublic interface UserDao {      public int insertAndGetId(User user);  }  User user = new User();  user.setUserName("chenzhou");  user.setPassword("xxxx");  user.setComment("测试插入数据返回主键功能");  System.out.println("插入前主键为:"+user.getUserId());  userDao.insertAndGetId(user);//插入操作  System.out.println("插入后主键为:"+user.getUserId());  输出:Shell代码  收藏代码插入前主键为:0  插入后主键为:15  如上所示,刚刚插入的记录主键id为15
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
0 0
原创粉丝点击