Database 根据db规范对案例类字段的限制
我在scala中创建了一堆case类,我将用它们来写db。因为数据库中的列有一定的限制(长度、类型、null/notnull等)。如何在不逐个检查每个字段的情况下对case对象字段实施长度限制 这就是如何在case类的字段上放置重构Database 根据db规范对案例类字段的限制,database,scala,Database,Scala,我在scala中创建了一堆case类,我将用它们来写db。因为数据库中的列有一定的限制(长度、类型、null/notnull等)。如何在不逐个检查每个字段的情况下对case对象字段实施长度限制 这就是如何在case类的字段上放置重构 object Solution1 extends App { case class Payload(name: String, id: Int, address: String) { require(name.length < 10) r
object Solution1 extends App {
case class Payload(name: String, id: Int, address: String) {
require(name.length < 10)
require(address.length <= 50)
}
println(Payload("name5678910", 120, "earth")) // this will give you an erro
println(Payload("name", 121, "earth"))
}
对象解决方案1扩展应用程序{
案例类有效负载(名称:String,id:Int,地址:String){
要求(名称.长度<10)
require(address.length这是如何在case类的字段上进行重构的
object Solution1 extends App {
case class Payload(name: String, id: Int, address: String) {
require(name.length < 10)
require(address.length <= 50)
}
println(Payload("name5678910", 120, "earth")) // this will give you an erro
println(Payload("name", 121, "earth"))
}
对象解决方案1扩展应用程序{
案例类有效负载(名称:String,id:Int,地址:String){
要求(名称.长度<10)
要求(address.length你想做什么?你能用更多的细节更新你的问题吗?事实上,这个问题并不能清楚地说明你想要达到什么目的。@RamanMishra,我已经编辑了这个问题。你为什么不能使用requires并在每个字段上加上条件?你想做什么?你能用更多的细节更新你的问题吗问题并没有清楚地告诉你想要实现什么。@RamanMishra,我已经编辑了这个问题。为什么你不能使用requires并将条件放在每个字段上?另一个可能更复杂的选项是查看将这些限制移动到类型级别。另一个可能更复杂的选项是查看to将这些限制移到类型级别。