c mysql 插入返回id_Java MySQL使用MyBatis插入(insert)数据获取自动生成主键的方法及示例代码...

1、配置xml中insert标签

1) xml中添加下面内容

useGeneratedKeys="true" keyProperty="id">

INSERT INTO Pet (NAME, OWNER, SPECIES, SEX, BIRTH)

VALUES (#{name}, #{owner}, #{species}, #{sex}, #{birth})

2) 获取自动生成主键public int createPet(PetDVO petDVO) throws Exception {

HashMap inputMap = new HashMap();

inputMap.put("name", petDVO.getName());

inputMap.put("owner", petDVO.getOwner());

inputMap.put("species", petDVO.getSpecies());

inputMap.put("sex", petDVO.getSex());

inputMap.put("birth", petDVO.getBirth());

/**

* Get the sql session and commit the data

*/

SqlSession sqlSession = getSqlSession();

sqlSession.insert("createPet", inputMap);

sqlSession.commit();

BigInteger newID = (BigInteger)inputMap.get("id");

return newID.intValue();

}

2、配置resultMap和insert标签

1) xml中配置

INSERT INTO errors (

DATE,

TYPE,

MESSAGE,

SOURCE

)

VALUES (

#{timestamp},

#{type},

#{message},

#{source}

)

2) Interface.java代码public void insertRecord(@Param("error") Error error);

相关文档:

3、配置insert和selectKey标签

1) xml中配置

useGeneratedKeys="true" keyProperty="demoId" keyColumn="DEMOID">

INSERT INTO TBL_DEMO (DEMONAME,DEMODESCRIPTION)

VALUE (#{demoName},#{demoDescription})

SELECT LAST_INSERT_ID();

2) 使用代码@Override

public boolean saveDemo(Demo demo) {

boolean status = false;

SqlSession session = this.sqlSessionFactory.openSession();

try {

DemoMapper mapper = session.getMapper(DemoMapper.class);

mapper.saveDemo(demo);

session.commit();

status = true;

} catch(PersistenceException e) {

System.out.println(e);

} finally {

session.close();

}

return status;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值