为空和不为空为什么用两种方式
来源:10-5 创建课程的增删改查接口(上)

qq_慕妹2034599
2023-12-03
可以为空是通过@Column中传入nullable:true 不为空是通过@IsNotEmpty()修饰器。。那么是否可以通过@Column中传入nullable:false为false替代@IsNotEmpty()呢。两者有什么区别的呢
写回答
1回答
-
黑石
2023-12-05
@Column(nullable = false): 是一个数据库级别的约束,用于指定该字段在数据库中不允许为空。这意味着无论是在应用程序层面还是在数据库层面,都会强制要求该字段有值。这是一种静态的约束,无法在运行时动态更改。
@IsNotEmpty(): 这是一个应用程序级别的约束,用于验证字段在应用程序中不为空。它是通过在实体类的setter方法上添加修饰器来实现的。当使用该修饰器时,每次设置字段的值时都会进行非空验证。这是一种动态的约束,可以在运行时根据业务逻辑进行更改。
一般两个都是需要的。
10
相似问题