Mybatis之useGeneratedKeys&&keyProperty

该博客介绍了如何在Java后端通过MyBatis与MySQL数据库交互,当新增数据时,利用useGeneratedKeys和keyProperty特性获取自增长字段audioId的值。详细讲解了实体类、Dao层接口及Mapper XML配置的实现方法。
摘要由CSDN通过智能技术生成

新增数据后返回自增长字段id

数据库使用MySQL

实体类

这里需要有属性自增长字段(audioId)

@Setter
@Getter
@JsonInclude(JsonInclude.Include.NON_EMPTY)
public class AudioInfo {
    private int audioId;
    private String name;
    private String audioSize;
    private Timestamp generTime;
    private int audioDuration;
    private int videoId;
    private String audioType;
    private String filePath;
    private int priorId;
    private String remotePath;
}

Dao层

这里比较重要的是参数要为实体类型

/**
 * 插入分离出的音频
 * @param audioInfo 音频实例
 */
void insertAudioInfo(AudioInfo audioInfo);

Mapper

sql语句中不需要写自增长字段(audioId)

<insert id="insertAudioInfo" parameterType="com.competitions.videoedithelper.entity.AudioInfo" useGeneratedKeys="true" keyProperty="audioId" keyColumn="audioId">
        insert into edu_audiosource(name,audioSize,generTime,audioDuration,videoId,audioType,filePath,priorId,remotePath)
        values(#{name},#{audioSize},#{generTime},#{audioDuration},#{videoId},#{audioType},#{filePath},#{priorId},#{remotePath})
</insert>

这样数据库中插入数据成功后,可以在实体实例中获得自增长字段(audioId)的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值