mybatis mysql insert/update 返回自增长主键

关键属性 keyProperty、useGeneratedKeys

官网描述 keyProperty、useGeneratedKeys
keyProperty useGeneratedKeys


代码实例

  • mapper/dao层次代码片段
//这里用了别名"vo"
int insert(@Param("vo") Information information);
  • xml文件代码片段

    
        INSERT INTO information (
                    title,
                    create_time,
                    comment_count,
                    praise_count,
                    read_count,
                    url,
                    type,
                    city
                )
                VALUES
                (
                    #{vo.title}         ,
                    #{vo.createTime}    ,
                    #{vo.commentCount}  ,
                    #{vo.praiseCount}   ,
                    #{vo.readCount}     ,
                    #{vo.url}           ,
                    #{vo.type}          ,
                    #{vo.city}
                )
    
  • service代码片段-结果及保存
#返回的主键值会保存到传入为参数的对象里面
Information information = htmlHandler.parserInformation(htmlRaw);
logger.info("插入前主键值:"+information.getId());
dao.insertInformation(information);
logger.info("插入后主键值:"+information.getId());

# 结果
2018-03-08 17:25:27.709  INFO 10224 --- [   html-fetch-3] c.c.f.s.impl.InformationServiceImpl      : 插入前主键值:0
2018-03-08 17:25:27.724  INFO 10224 --- [   html-fetch-3] c.c.f.s.impl.InformationServiceImpl      : 插入后主键值:101

你可能感兴趣的:(mybatis mysql insert/update 返回自增长主键)