zoukankan      html  css  js  c++  java
  • 关于useGeneratedKeys的使用

    今天认识到一个新参数 useGeneratedKeys  再这里我记录分享一下

    在我们进行两表关联的时候,添加表1Specification 表2Specification_option

    表一:

                                 

      表二:

    他们通过外键关联 在我们进行添加时:

    在我们添加表一的数据时后 表二需要通过表一的id来进行查询添加 但是我们获取不了表一的id

    (虽然数据库中有自增的主键,但是我们的实体类中没有获取到添加的id)

    这时候我们就需要useGeneratedKeys

    他有什么作用呢?

    在mybatis的配置文件中,有个叫keyProperty和useGeneratedKeys的属性。useGeneratedKeys 参数只针对 insert 语句生效,默认为 false。当设置为 true 时,表示如果插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回。

    所以 我们只需要在mybatis的配置文件中添加这个参数就可以了

    <insert id="insertSelective" parameterType="com.ujiuye.pojo.specification.Specification"
      useGeneratedKeys="true" keyProperty="id"
      >
        insert into tb_specification

    这样 我们就能直接获取主键的id了

    另外有几点补充:

    useGeneratedKeys参数只针对 insert 语句生效,默认为 false;

    有三处地方可以配置useGeneratedKeys 最终的效果都是一样的 只是影响范围不同

  • 相关阅读:
    SQL SERVER 2012修改数据库名称(包括 db.mdf 名称的修改)
    vmware三种网络模式
    指针
    linux 中 开放端口,以及防火墙的相关命令
    数据库备份的脚本,记录下,还需优化下
    遍历 目录的几种有效办法
    转。git 乌龟的使用安装
    centos 时区正确,时间不对
    locate
    从 零开始 无差错 装好nginx+PHP
  • 原文地址:https://www.cnblogs.com/hank-hush/p/12056530.html
Copyright © 2011-2022 走看看