hao947 : Mybatis resultMap配置插入和主键自增返回 : 好947
映射配置文件 好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的更多相关文章
- mybatis获取批量插入的主键自增id
一.写一个实体类 public class UserInfo { private long userId; private String userAccount; private String use ...
- mybatis 注解方式插入,主键由uuid函数生成
@SelectKey(keyProperty = "record.id", resultType = String.class, before = true, statement ...
- oracle批量插入带主键自增
https://blog.csdn.net/qq_37630354/article/details/82792288
- MyBatis+MySQL 返回插入的主键ID
需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: <insert id="i ...
- jdbc、Mybatis插入数据主键回显的实现方法
插入数据的时候,往往需要获取主键值.但是有时候主键是自增长的那么,就不太适用手动添加主键值了,此时需要一种可以回显主键参数的方法, 下面以jdbc.mybatis的实现举例 此时使用的是jdbc的话或 ...
- (转)MyBatis+MySQL 返回插入的主键ID
MyBatis+MySQL 返回插入的主键ID 需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如 ...
- Mybatis 返回插入的主键
业务中,会遇到这样的问题,就是感觉返回的主键,插入作为其他表的外键. 那么问题来了,如何去实现,其实方法比较简单,这里就是重点记录下,会出现的误区. 用自动生成sql工具的话,加上下面这句话 < ...
- MyBatis返回插入的主键ID(Mysql数据库)
1.Java代码: 1.1 entity类: User.java public class User { private int userId; private String userName; pr ...
- mybatis+mysql返回插入的主键,参数只是提供部分参数
mybatis+mysql返回插入的主键,参数只是提供部分参数 <insert id="insertByChannelIdOpenid" useGeneratedKeys=& ...
随机推荐
- 04-IOSCore - User Defaults、Archive、存储总结
一. User Defaults 1. 是什么? 是一个特殊的plist文件 2. 干什么? 用于保存应用的配置信息 3. 存什么信息? 信息:欢迎界面有没有被打开过 目的:欢迎界面只显示一次 信息: ...
- intent.getAction()
这个是发送端注册上的IntentFilter filter = new IntentFilter( Intent.ACTION_MEDIA_SCANNER_STARTED); filter.addAc ...
- 一、Mongo的安装
注:学习为主,平台为WIN7 32位系统 一.Mongo的安装 1.1 下载 到官方下载地址(http://www.mongodb.org/downloads)去下载所需要的版本 1.2 安装与运行 ...
- 基于W5500+Yeelink的远程灯光控制设计
概述 工具:物联网云平台Yeelink DHT11温湿度传感器 W5500EVB 编译环境:Keil4 目的:通过以太网实时监控远程某个位置的温度和湿度 在W5500EVB端连接LED灯.通过W ...
- Python Challenge 第四题
这一题没有显示提示语,仅仅有一幅图片,图片也看不出什么名堂,于是直接查看源代码,源代码例如以下: <html> <head> <title>follow the c ...
- linux脚本: makefile以及链接库
Linux makefile 教程 非常详细,且易懂 http://blog.csdn.net/liang13664759/article/details/1771246 //sort.c #incl ...
- JAVA 操作 DBF 文件数据库
1.依赖夹包 javadbf-[].4.1.jar jconn3.jar 2.添加属性文件 jdbc.properties jdbc.driverClassName=com.sybase.jdbc3. ...
- 深入浅出Hive企业级架构优化、Hive Sql优化、压缩和分布式缓存(企业Hadoop应用核心产品)
一.本课程是怎么样的一门课程(全面介绍) 1.1.课程的背景 作为企业Hadoop应用的核心产品,Hive承载着FaceBook.淘宝等大佬 95%以上的离线统计,很多企业里的离线统 ...
- 开发环境FAQ
问: Win7下VS2008无法识别WinCE5.0SDK 答:拷贝WinXP环境(安装过VS2008 + WinCE5.0SDK)下C:/Program Files/Microsoft Visual ...
- Codility上的问题 (17) PI 2012
这个题比较简单,给定一个整数数组,对每个元素,求出和它最近比它大的数的距离(下标绝对值),如果没有比它大的数,认为距离是0. 数组元素个数 N [0..50000],数组元素范围[-10^9, +10 ...