您的位置:首页 > 数据库 > MySQL

Mybatis + mysql 返回自增主键

2015-08-18 00:00 489 查看
摘要: Mybatis + mysql insert 返回自增主键
写出来作为今天的教训

网上介绍的方法有很多 此处只写这一种

步骤1:

<!--这里设置useGeneratedKeys、keyProperty这两个属性 keyProperty的值对应javaBean中的主键属性-->

<insert id="insert"
parameterType="com.asiainfo.category.website.bean.WebsiteClassify"
useGeneratedKeys="true" keyProperty="websiteClassifyId">
insert into website_classify
(website_classify_id,website_id, website_classify_name, website_classify_level, parent_website_classify_id)
values (#{websiteClassifyId},#{websiteId,jdbcType=INTEGER}, #{websiteClassifyName,jdbcType=VARCHAR},
#{websiteClassifyLevel,jdbcType=INTEGER}, #{parentWebsiteClassifyId,jdbcType=INTEGER}
)
</insert>

步骤2:(重点)

/**
*
* @Title: insertAndGetParentWebsiteClassifyId
* @Description: TODO(插入操作)
* @param @return 参数
* @return int 返回类型
* @throws
*/
public int insertAndGetParentWebsiteClassifyId(Integer websiteId, String cat, Integer parentWebsiteClassifyId,
Integer classifyLvel) {
WebsiteClassify websiteClassify = new WebsiteClassify();
websiteClassify.setWebsiteClassifyName(cat);
websiteClassify.setParentWebsiteClassifyId(parentWebsiteClassifyId);
websiteClassify.setWebsiteClassifyLevel(classifyLvel);
websiteClassify.setWebsiteId(websiteId);
websiteClassifyDao.insert(websiteClassify); //这里插入成功,返回值永远都是1
return websiteClassify.getWebsiteClassifyId(); //这样来取值
}

附Dao

@Repository
public class WebsiteClassifyDao {
@Autowired
private WebsiteClassifyMapper websiteClassifyMapper;
public WebsiteClassify findByCondition(WebsiteClassify websiteClassify) {
return websiteClassifyMapper.findByCondition(websiteClassify);
}
public int insert(WebsiteClassify websiteClassify) {
return websiteClassifyMapper.insert(websiteClassify);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: