映射配置文件  好947

 <!-- type:映射实体类的数据类型 id:resultMap的唯一标识 -->
 <resultMap type="person" id="BaseResultMap">
  <!-- column:库表的字段名 property:实体类里的属性名 -->
  <id column="person_id" property="personId" />
  <result column="name" property="name" />
  <result column="gender" property="gender" />
  <result column="person_addr" property="personAddr" />
  <result column="birthday" property="birthday" />
 </resultMap>

映射配置查询语句  好947

<insert id="insert" parameterType="com.hao947.model.Person">
  <!--
  keyProperty:实体类中的id属性名,当返回主键的时候就是返回给keyProperty
  order:生成主键和运行insert语句的顺序,在mysql是AFTER,在oracle中使用BEFORE
  resultType:主键返回的数据类型,和实体类中的主键的类型一致
  select LAST_INSERT_ID():mysql中生成主键的sql,oracle中select xxxx.nextval from dual
   -->
  <selectKey keyProperty="personId" order="AFTER" resultType="java.lang.Integer">
   select last_insert_id();
  </selectKey>
  insert into person (person_id, name, gender, person_addr, birthday)
  values(#{personId}, #{name}, #{gender}, #{personAddr}, #{birthday})
 </insert>

映射管理库表文件  hao947

<!-- 集中管理库表的映射文件 -->
 <mappers>
  <mapper resource="com/hao947/sql/mapper/PersonMapper.xml" />
 </mappers>

測试文件  hao947

@Test
 public void insert() {
  SqlSession session = sqlSessionFactory.openSession();
  try {
   Person p = new Person();
  // p.setPersonId(3);
   p.setName("架构师");
   p.setGender(1);
   p.setPersonAddr("北京");
   p.setBirthday(new SimpleDateFormat("yyyy-MM-dd").parse("1985-03-14"));
   session.insert("com.hao947.sql.mapper.PersonMapper.insert", p);
   //运行完库表变更必需要提交事务
   session.commit();
  } catch (ParseException e) {
   session.rollback();
   e.printStackTrace();
  } finally{
   session.close();
  }
 }

大站喜欢採集:那就都採集吧! 好947:出品

hao947 : Mybatis resultMap配置插入和主键自增返回 : 好947的更多相关文章

  1. mybatis获取批量插入的主键自增id

    一.写一个实体类 public class UserInfo { private long userId; private String userAccount; private String use ...

  2. mybatis 注解方式插入,主键由uuid函数生成

    @SelectKey(keyProperty = "record.id", resultType = String.class, before = true, statement ...

  3. oracle批量插入带主键自增

    https://blog.csdn.net/qq_37630354/article/details/82792288

  4. MyBatis+MySQL 返回插入的主键ID

    需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: <insert id="i ...

  5. jdbc、Mybatis插入数据主键回显的实现方法

    插入数据的时候,往往需要获取主键值.但是有时候主键是自增长的那么,就不太适用手动添加主键值了,此时需要一种可以回显主键参数的方法, 下面以jdbc.mybatis的实现举例 此时使用的是jdbc的话或 ...

  6. (转)MyBatis+MySQL 返回插入的主键ID

    MyBatis+MySQL 返回插入的主键ID 需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如 ...

  7. Mybatis 返回插入的主键

    业务中,会遇到这样的问题,就是感觉返回的主键,插入作为其他表的外键. 那么问题来了,如何去实现,其实方法比较简单,这里就是重点记录下,会出现的误区. 用自动生成sql工具的话,加上下面这句话 < ...

  8. MyBatis返回插入的主键ID(Mysql数据库)

    1.Java代码: 1.1 entity类: User.java public class User { private int userId; private String userName; pr ...

  9. mybatis+mysql返回插入的主键,参数只是提供部分参数

    mybatis+mysql返回插入的主键,参数只是提供部分参数 <insert id="insertByChannelIdOpenid" useGeneratedKeys=& ...

随机推荐

  1. LeetCodeOJ. String to Integer (atoi)

    试题请參见: https://oj.leetcode.com/problems/string-to-integer-atoi/ 题目概述 Implement atoi to convert a str ...

  2. webform之session传值(临时数据的存储)与扩展属性 --(购物车练习)

    页面传值:1.QueryString传值在源页面写:Response.Redirect("Main.aspx?uid="+uid+"&pwd="+pwd ...

  3. 在C++中使用C#编写的类2

    在那篇<在C#中使用C++编写的类>中我介绍了如何在C#中使用C++编写的类.可是由于C#在用户界面设计.数据库存储和XML文件读取等方面的优势,有时候也会出现要在C++中使用C#编写的类 ...

  4. C语言中 移位操作运算

    移位规律: 左移时总是移位和补零.右移时无符号数是移位和补零,此时称为逻辑右移;而有符号数大多数情况下是移位后补最左边的位(也就是补最高有效位),移几位就补几位,此时称为算术右移.(其实跟扩展逻辑一样 ...

  5. cocos2d-x游戏开发系列教程-坦克大战游戏之子弹和地图碰撞

    上篇文章实现了坦克与地图碰撞的检测, 这篇我们继续完成子弹和地图的碰撞检测. 1.先设计一个子弹类Bullet,如下所示: class Bullet : public CCSprite { publi ...

  6. cocos2d-x游戏开发系列教程-坦克大战游戏之坦克和地图碰撞的检测下

    上篇我们完成了地图的信息获取和碰撞检测,这篇我们整合到程序中. 在这之前我们改造一下Tank类,使它更加模块化,共容易理解: 1.改造后的Tank类声明如下: class Tank : public ...

  7. 它们偷偷干了啥?教你监督APP的运行

    由于Android系统的开放性,很多APP都会在后台运行各种我们不知道的权限,不仅泄露我们隐私,也给系统本身带来极大安全隐患.而且现在很普遍的是,在安装APP时它总会索取特别多的权限,又是拍照又是地理 ...

  8. ./ . 和#!/bin/bash 辨析Linux如何选择当前执行脚本的shell

    最近遇到一个有趣的问题,让我搞清楚Linux如何选择当前执行脚本的shell 执行cts的的 media stress test 需要安装 android-cts-media-1.0.zip 把这个文 ...

  9. 新发现的Cyberduck(映射网盘)和zsuncloud(硬件产品很新潮),群辉nas的确好用(购买链接)

    https://cyberduck.io/?l=en http://www.zsuncloud.com/ 群辉nas的确好用啊在哪里可以买到?官网 淘宝也可以自己做黑群晖 先用xpenoboot is ...

  10. Thymeleaf Javascript 取值

    <script th:inline="javascript"> var openid = /*[[${session.wxuser.openId}]]*/ </s ...