INSERT INTO Pet (NAME, OWNER, SPECIES, SEX, BIRTH)VALUES (#{name}, #{owner}, #{species}, #{sex}, #{birth})2) 获取自动生成主键public int..._mybatis insert 返回id,id是在mysql生成的还是在java代码这生成的">
当前位置:   article > 正文

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

mybatis insert 返回id,id是在mysql生成的还是在java代码这生成的

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;

}

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号