我正在关注Case类
case class BIC( id: Option[Int], name: String, description: Option[String],
bId: Option[Int], amount: BigDecimal,
createdBy: Option[Int], createdAt: Option[DateTime] )
我的REST-API网址如下所示
POST /api/v3/user/2/bid/23/create
现在userId = 2和bId = 23来自URL路径参数 我也有来自POST Request JSON的BIC列表,它不包含userId和bId
我直接将传入的JSON注入List [BIC],但此列表中的所有对象都没有createdBy(userId)和bId设置。
如果我想在List [BIC]的每个BIC对象中设置这两个参数,我应该遵循哪种方法?
val lsttemp:List[BIC] = bicList
val lst:List[BIC]
lsttemp.foreach(x=>{
x.bId=inId
x.createdBy = userId
lst.add(x)
})
我正在尝试上面的代码,但它不起作用。
答案 0 :(得分:3)
Case classes
提供copy
方法,帮助您实现目标:
val lst = bicList.map( _.copy(bId=inId, createdBy = userId))