Scala 域类和slick生成的case类与Shapeless的转换
Slick codegen生成一个方便的Tables.scala,其中包含行和表的所有类。我们喜欢这种方法,因为我们可以使用关系设计并充分利用我们选择的SQL方言的强大功能 但是,出于以下原因,我们正在编写大量的boiler plate代码,以将REST API模型/域API模型转换为光滑的XYZ行:Scala 域类和slick生成的case类与Shapeless的转换,scala,slick,shapeless,Scala,Slick,Shapeless,Slick codegen生成一个方便的Tables.scala,其中包含行和表的所有类。我们喜欢这种方法,因为我们可以使用关系设计并充分利用我们选择的SQL方言的强大功能 但是,出于以下原因,我们正在编写大量的boiler plate代码,以将REST API模型/域API模型转换为光滑的XYZ行: Slick case类中的参数比domain case类中的参数多(这些额外的参数是从REST资源的路径中提取的) 我们不希望将路径相关类型公开给其他层/微服务。他们只需要知道RESTAPI模型
有一些库可以做到这一点,您可以使用或阅读源代码进行学习。比如说