5.服务器内部错误 500

1.不能重复 commit,即:

image

  • 报错信息java.sql.SQLException: Can't call commit when autocommit=true(中文意思:当自动提交模式开启时,不能手动调用 commit 方法)

  • 在 JDBC 中,连接默认是 自动提交 (AutoCommit = true) 的。如果你想手动控制事务(使用 commit 和 rollback),你必须在获取连接后,立刻把自动提交关掉,即 setAutoCommit(false)

  • 代码逻辑

    1. 插歌曲
    2. 插作者
    3. 插图片
    4. 统一提交 (commit)
      如果不加 setAutoCommit(false),数据库处于“执行一条SQL就立刻生效”的模式,这种模式下是不允许你手动喊“提交”的,自动提交(AutoCommit)确实做不到“一荣俱荣、一损俱损”。

2.使用try.....catch....捕获异常,必须手动把异常扔出去 throw new RuntimeException(e);,不然前端或者postMan不会报错,因为spring认为这个方法顺利运行结束了,没有抛出异常,所以它就给 Postman 返回了一个 200 OK(默认成功状态)。

posted @ 2025-12-16 22:41  那就改变世界吧  阅读(3)  评论(0)    收藏  举报