mybatis insert 返回主键
2016-07-20 09:58
411 查看
需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值。
方法1(推介使用):在mapper中指定keyProperty属性,示例如下:
方法2:在mapper中指定keyProperty属性,示例如下:
如上所示,我们在insert中指定了keyProperty="advertId",其中advertId代表插入的Advert对象的主键属性。
Advert.java
输出:
方法1(推介使用):在mapper中指定keyProperty属性,示例如下:
<insert id="insert" parameterType="com.cl.media.model.Advert" useGeneratedKeys="true" keyProperty=advertId"> insert into r_advert (advert_id, org_id, title,image, `url`) values (#advertIdjdbcType=BIGINT},#{orgId,jdbcType=BIGINT},#{title,jdbcType=VARCHAR}, #{image,jdbcType=VARCHAR},#{url,jdbcType=VARCHAR}) </insert>
方法2:在mapper中指定keyProperty属性,示例如下:
<insert id="insert" parameterType="com.cl.media.model.Advert"> <selectKey resultType="java.lang.Long" order="AFTER" keyProperty="advertId"> SELECT LAST_INSERT_ID() AS advertId </selectKey> insert into r_advert (advert_id, org_id, title,image, `url`) values (#advertIdjdbcType=BIGINT},#{orgId,jdbcType=BIGINT},#{title,jdbcType=VARCHAR}, #{image,jdbcType=VARCHAR},#{url,jdbcType=VARCHAR}) </insert>
如上所示,我们在insert中指定了keyProperty="advertId",其中advertId代表插入的Advert对象的主键属性。
Advert.java
public class Advert { private Long advertId; private Long orgId; private String title; private String image; private String url; }测试:
System.out.println("插入前:"+advert.getAdvertId()); int insert = dao.insert(advert); System.out.println("插入后:"+advert.getAdvert());
输出:
插入前:null 插放后: 34
相关文章推荐
- Spring3.X企业开发实战(一):入门实例
- Xshell 连接Ubuntu的方法
- Effective Object-c 2.0 读书笔记 (2)
- 43 n 个筛子 的点数
- 社会学的研究方法
- 线性回归笔记
- Listview的onItemClickListener无法响应的解决方法(转)
- PHP的AES加密算法完整实例
- Reorder List
- Winfrom 文本框回车进入下一个个单元格(TextBox)
- loadView、viewDidLoad及viewDidUnload的关系
- Maven项目,右键-update project后JRE system Library变成eclipse默认的版本
- TI 的 Codec Engine框架简介
- net项目发布到IIS上一系列问题汇总
- VBA之FormulaR1C1属性
- Linux互斥与同步之原子操作
- TextView实现跑马灯效果
- Android实现推送方式解决方案
- magic_quotes_gpc和magic_quotes_runtime的区别和用法详解
- J2EE进阶(七)利用SSH框架根据数据表建立model类