mybatis 针对SQL Server 的 主键id生成策略

时间:2022-05-03
本文章向大家介绍mybatis 针对SQL Server 的 主键id生成策略,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

SQL Server中命令: select newId()  ,可以得到SQL server数据库原生的UUID值,因此我们可以将这条指令写到 Mybatis的主键生成策略配置selectKey中。

如下:

在 mapper.xml 类型映射配置文件中

<insert id="insert" parameterType="com.hqdl.xiaoyi.bean.SpUser">
  	<selectKey keyProperty="id" resultType="String" order="BEFORE">    
        select newId()    
    </selectKey>  
    insert into sp_user_list (id, name, full_name, 
      password, category, user_type, 
      company_id, depart_id, code, 
      locked, wrong_pwd_count, last_login_time, 
      lock_reason, create_user_id, create_person_name, 
      create_time, deleted)
    values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{fullName,jdbcType=VARCHAR}, 
      #{password,jdbcType=VARCHAR}, #{category,jdbcType=VARCHAR}, #{userType,jdbcType=VARCHAR}, 
      #{companyId,jdbcType=VARCHAR}, #{departId,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, 
      #{locked,jdbcType=CHAR}, #{wrongPwdCount,jdbcType=INTEGER}, #{lastLoginTime,jdbcType=VARCHAR}, 
      #{lockReason,jdbcType=VARCHAR}, #{createUserId,jdbcType=VARCHAR}, #{createPersonName,jdbcType=VARCHAR}, 
      #{createTime,jdbcType=VARCHAR}, #{deleted,jdbcType=CHAR})
  </insert>

  得到插入结果