优点
- mybatis是一种持久层框架,也属于ORM映射。前身是ibatis。
- 相比于hibernatehibernate为全自动化,配置文件书写之后不需要书写sql语句,但是欠缺灵活,很多时候需要优化;
- mybatis为半自动化,需要自己书写sql语句,需要自己定义映射。增加了程序员的一些操作,但是带来了设计上的灵活,并且也是支持hibernate的一些特性,如延迟加载,缓存和映射等;对数据库的兼容性比hibernate差。移植性不好,但是可编写灵活和高性能的sql语句。
- 简单易学
- 灵活
提醒:本文主要讲述一下使用MyBatis对MySQL数据库添加记录后获取主键ID的方法,不涉及MS Server或者Oracle,敬请注意。
MyBatis添加记录后获取主键ID,这是一个很常见的需求。这个需求有分为两种情况:(1)添加单条记录时获取主键值;(2)获取批量添加记录时各记录的主键值。
备注:MyBatis从3.3.1版本开始支持批量添加记录并返回各记录主键字段值。
1、添加单一记录时返回主键ID(方法一)
此种方法主要思路是:使用<insert>标签或者@Insert注解的属性:useGeneratedKey