今天spring mvc遇到的问题,之前一直没有注意的。

一、问题场景

数据库的id设置为primary key,如果尝试插入相同的id,直接报错违反唯一约束条件。

希望不报错影响程序完整性,如果违反唯一约束条件,直接返回插入失败。

二、解决办法

(1)不insert id,设置id为自增,可以确保id唯一

需要修改数据库配置。

但是这种方式限制了id字段为自增型,由需求限制。

(2)不对数据库本身做改动,直接在service中catch错误,返回错误提示即可

这种方式要求开发者不能有遗漏。

(3)进行mybatis映射文件的配置

关键就是:

这段话保证插入的时候随机取id。

插入的id会变成一长串:1F8EB364DE194BCFB22FB5D502284971。

id变得很长很复杂,而且会覆盖插入时候的id,无法指定id进行插入。

三、总结

反正就是根据需求来,不要吞错误就可以了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注