Scala CRUD pojo 生成
Scala CRUD pojo generation
我正在想办法在 Scala 中使用 POST 和类型 Foo
的 PATCH 方法实现简单的 CRUD API。因此,我对 API 的实际类型 Foo
、POST
pojo 和 PATCH
pojo 的定义如下:
case class Foo(
id: String,
field1: String,
field2: Int
)
case class CreateFoo(
field1: String,
field2: Int
)
case class UpdateFoo(
field1: Option[String],
field2: Option[Int],
)
我想避免所有这些样板并保持所有 3 个 类 同步,即如果我想添加 field3: Boolean
。我开始阅读类型宏,它似乎是生成我所有 pojo 的正确工具。但是,我觉得这个问题必须已经解决并且我正在重新发明轮子。有解决方案吗?
看来你需要代码生成,所以为什么不使用代码生成器(例如 Telosys https://www.telosys.org/)
使用这样的工具,您只需定义一次 class(在“实体”文件中),它就会生成所有重复代码(无论使用哪种语言,在您的情况下为 Scala)
我正在想办法在 Scala 中使用 POST 和类型 Foo
的 PATCH 方法实现简单的 CRUD API。因此,我对 API 的实际类型 Foo
、POST
pojo 和 PATCH
pojo 的定义如下:
case class Foo(
id: String,
field1: String,
field2: Int
)
case class CreateFoo(
field1: String,
field2: Int
)
case class UpdateFoo(
field1: Option[String],
field2: Option[Int],
)
我想避免所有这些样板并保持所有 3 个 类 同步,即如果我想添加 field3: Boolean
。我开始阅读类型宏,它似乎是生成我所有 pojo 的正确工具。但是,我觉得这个问题必须已经解决并且我正在重新发明轮子。有解决方案吗?
看来你需要代码生成,所以为什么不使用代码生成器(例如 Telosys https://www.telosys.org/)
使用这样的工具,您只需定义一次 class(在“实体”文件中),它就会生成所有重复代码(无论使用哪种语言,在您的情况下为 Scala)