zoukankan      html  css  js  c++  java
  • MyBatis返回插入的主键ID(Mysql数据库)

    1.Java代码:

    1.1 entity类:

    User.java

    public class User {  

      private int userId;  

      private String userName;  

      private String password;  

      private String comment;  

      //这里要添加 setter and getter  略

    }  

    1.2 DAO类:

     UserDao.java

    public interface UserDao {  

      public int insertAndGetId(User user);  

    }  

    2.Xml代码 : 

    方法:在mapper中指定keyProperty属性,示例如下:(注意:这里不需要 resultType属性!)

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

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

    说明:

    useGeneratedKeys: 取值范围 true | false 默认值是:false。 含义:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。

    keyProperty: 是JAVA对象的属性名(这里对应的是User.java的userId)。 

    3.  测试:

    Java代码  

      User user = new User();   
      user.setUserName("张三");   
      user.setPassword("xxxx");   
      user.setComment("测试插入数据返回主键功能");
      System.out.println("插入前主键为:"+user.getUserId());
      UserDao.insertAndGetId(user);//插入操作   
      System.out.println("插入后主键为:"+user.getUserId()); //注意:这里取的取值.

     

  • 相关阅读:
    获取远程图片的Blob资源
    Vue使用SCSS进行模块化开发
    Vue设置页面的title
    Vue里边接口访问Post、Get
    module.exports 、 exports 和 export 、 export default 、 import
    Vue设置不同的环境发布程序
    记一个鼠标略过时候的css动画
    关于正则表达式中^和$
    [LOJ#2305]「NOI2017」游戏
    [LOJ#6437][BZOJ5373]「PKUSC2018」PKUSC
  • 原文地址:https://www.cnblogs.com/orac/p/7068292.html
Copyright © 2011-2022 走看看