mybatis oracle插入并返回主键UUID(两种方式,推荐第一种)

  • 第一种,使用selectKey 标签

注意:使用多数据源时,使用这种方式不会出错,如果在使用多数据源时使用第二种方式会报如下错误:

 Cause: java.sql.SQLException: 索引中丢失  IN 或 OUT 参数::

   
      select sys_guid() from dual
   
   insert into user
   
       id,
    
       username,
    
    
       passsword,
    
 
 
     #{id,jdbcType=VARCHAR},
     
        #{username,jdbcType=VARCHAR},
     
     
        #{passsword,jdbcType=VARCHAR},
     
 
  •  第二种使用useGeneratedKeys属性配置返回ID,同时需要使用keyColumn和keyProperty属性

 


   insert into user
   
    
       username,
    
    
       passsword,
    
 
 
     
        #{username,jdbcType=VARCHAR},
     
     
        #{passsword,jdbcType=VARCHAR},
     
 
 

你可能感兴趣的:(Java,mybatis)