7911364440
V2EX  ›  Java

SpringBoot 的 DataJpa 插入数据时,数据库(mysql)中字段默认值不生效怎么解决?

  •  
  •   7911364440 · Nov 8, 2021 · 3059 views
    This topic created in 1824 days ago, the information mentioned may be changed or developed.
    如题。
    Supplement 1  ·  Nov 8, 2021
    用 4L 的方法解决了
    7 replies  •  2021-11-08 11:57:14 +08:00
    siweipancc
    siweipancc
    Nov 8, 2021 via iPhone
    1
    通过什么实现的,lifeCallback 还是 表行定义,还是类默认值。类默认值注意 Bean-copy 源码实现,life 要走 jpa.persist()
    leeg810312
    leeg810312
    Nov 8, 2021 via Android
    2
    默认值不生效只有一个原因,insert SQL 填充了字段值
    summerLast
    summerLast
    Nov 8, 2021
    3
    开启 sql 日志 看打印的 sql 就知道了
    Kontinue
    Kontinue
    Nov 8, 2021❤️2
    4
    securityCoding
    securityCoding
    Nov 8, 2021
    5
    并不是不生效,而是默认构造器创建对象时 entity 中的属性就是 null ,直接在 entity 赋值默认值。
    lhr96
    lhr96
    Nov 8, 2021
    6
    4L 正解
    c6h6benzene
    c6h6benzene
    Nov 8, 2021 via iPhone
    7
    我是在实体类里面的 Column 注解里面写了 insertable=false 和 updatable=false 。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4879 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 07:17 · PVG 15:17 · LAX 23:17 · JFK 02:17
    ♥ Do have faith in what you're doing.