我需要将一个 Json 字段保存为我的 Play 框架模型的一列。我在 DAO 中的表解析器是
class Table(tag: Tag) extends Table[Model](tag, "tablename") {
implicit val configFormat = Json.format[Config]
// Fields ...
def config = column[Config]("config", O.SqlType("JSON"))
// Fields ...
}
Run Code Online (Sandbox Code Playgroud)
Config
在 Play Model 文件夹中的 Model 中定义为一个案例类,并有他的伴生对象。此对象的字段是 Int、Double 或 String
case class Config ( // fields )
object Config {
implicit val readConfig: Reads[Config] = new Reads[Config]
for {
// fields
} yield Config(// fields)
implicit val configFormat = Json.format[Config]
}
Run Code Online (Sandbox Code Playgroud)
问题是由于这个错误我无法编译
Error:(28, 37) could not find implicit value …
Run Code Online (Sandbox Code Playgroud) 在将RDD写入文件之前执行以下转换之间有什么区别?
代码示例:
val input = sc.textFile(inputFile)
val filtered = input.filter(doSomeFiltering)
val mapped = filtered.map(doSomeMapping)
mapped.coalesce(1, shuffle = true).saveAsTextFile(outputFile)
vs
mapped.coalesce(1, shuffle = false).saveAsTextFile(outputFile)
Run Code Online (Sandbox Code Playgroud)
它与collect()相比如何?我完全知道Spark保存方法会将它存储为HDFS风格的结构,但是我对collect()和shuffled/non-shuffled coalesce()的数据分区方面更感兴趣.
我在Slick中有以下代码来更新对象用户:
val users = TableQuery[UserDB]
val action = users.filter(_.id === user.id).update(user)
val future = db.run(action)
val result = Await.result(future, Duration.Inf)
Run Code Online (Sandbox Code Playgroud)
但是我不想更新用户对象(密码)中的字段.怎么省略呢?