小编par*_*hah的帖子

如何在spring boot中添加基于条件的@NotNull约束?

我们正在使用spring-boot. 我想在 java 类中添加基于条件的约束。例如

@Entity
public class User {
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    @Column(name = "user_id")
    private Integer userId;
    @Column(name = "firstName")
    private String firstName;
    @Column(name = "lastName")
    private String lastName;
}
Run Code Online (Sandbox Code Playgroud)

现在在上面的代码中@NotNulllastName当且仅当firstName属性不为空时,我想对属性施加约束。

annotations spring-boot

6
推荐指数
1
解决办法
3474
查看次数

如何在连接列中指定外键?

我的代码如下。我正在使用带有jpa和postgresql数据库的spring boot,我需要用户友好的名称作为外键。

    @实体
    @Table(name =“ course_table”)
    公共课程课程扩展了BaseAuditingEntity {

    @ManyToMany(级联= CascadeType.REMOVE,提取= FetchType.EAGER)
    @JoinTable(name =“ course_program_table”,joinColumns = @JoinColumn(name =“ course_id”,referencedColumnName =“ course_id”,foreignKey = @ForeignKey(name =“ fk_program_id”)),inverseJoinColumns = @JoinColumn(name =“ program_id”, referencedColumnName =“ program_id”,foreignKey = @ForeignKey(name =“ fk_course_id”)))
    私人名单计划;
    }

我已经使用@ForeignKey批注指定了外键的名称,但是当我看到db时,它显示了随机创建的外键名称。

创建表course_program_table
(
    course_id整数NOT NULL,
    program_id整数NOT NULL,
    约束fk_28c95hl4nqclyvyxuduei5nbf外键(program_id)
        参考public.program_table(program_id)匹配简单
        无需更新时
        删除任何操作后,
    约束fk_5sainywquv8yyu24pjk3jptn7外键(course_id)
        参考public.course_table(course_id)匹配简单
        无需更新时
        不删除任何动作
)

我需要注释中提到的外键,例如fk_program_id和fk_course_id。

提前致谢。

java spring hibernate jpa spring-boot

5
推荐指数
2
解决办法
2568
查看次数

如何将Docker与GitHub Actions一起使用?

当我创建GitHub Actions工作流文件时,示例YAML文件包含runs-on: ubuntu-latest根据文档,我只有Ubuntu,Windows Server和macOS X的几个版本之间可以选择。

我以为GitHub Actions在Docker内部运行。如何选择Docker映像?

docker github-actions

3
推荐指数
2
解决办法
803
查看次数