【问题标题】:Spring Boot 2 - Hibernate and javax.validation annotationsSpring Boot 2 - Hibernate 和 javax.validation 注释
【发布时间】:2019-06-25 22:24:54
【问题描述】:

我有一个 Spring Boot 1.x 应用程序,我已迁移到 Spring Boot 2.1.2.RELEASE。我有一些用 javax.validation 约束注释的 JPA 实体,如下所示:

@Entity
public class User {

    @NotNull
    private String username;

}

这将为 MySQL 生成以下 ddl:

create table user (username varchar(255) not null);

现在这些约束被忽略了,我不明白为什么。你有什么提示吗?

【问题讨论】:

  • 由于 Java Bean Validation 注释与 JPA API 无关,因此在 JPA 模式生成方面不可移植,然后问问自己,当 JPA 提供它时,为什么要依赖此类 JPA 提供程序特定的东西自己的实现方式

标签: hibernate spring-boot jpa bean-validation


【解决方案1】:

我在 3 天前遇到了这个问题,对我有用的是:

1) 停止弹簧靴 2) 消除数据库 3) 重启spring boot再次生成

我还尝试将注释从@NotNull 更改为@Column(nullable=false),但它不起作用。

让我知道它是否也适合你!

【讨论】:

  • 事实上,我为每个 @NotNull 添加了 @Column(nullable=false) (注意,添加,而不是替换,因为我使用这些注释进行 bean 验证)它似乎有效,但我不明白为什么这已被禁用。
猜你喜欢
  • 2023-03-15
  • 2018-10-28
  • 1970-01-01
  • 2020-08-05
  • 2018-10-25
  • 2017-12-06
  • 1970-01-01
  • 1970-01-01
  • 2020-10-26
相关资源
最近更新 更多