:q 退出sbt console
Map的使用import scala.collection.mutable.Map
case class StatusChangeMessage(addressId: Option[String], contactName: Option[String], extraParam:extraMessage)
case class extraMessage(sellerName: Option[String], amount:Option[Int],sellerMobile: Option[String])
object StatusChangeMessageJsonProtocol extends DefaultJsonProtocol {
implicit val extraMessageFormat = jsonFormat(extraMessage,"sellerName","amount","sellerMobile")
implicit val statusChangeMessageFormat = jsonFormat(StatusChangeMessage,"addressId","contactName","extraParam")
}
class OrderDBSavedListener extends MessageListener {
def consume(message: Message, consumeContext: ConsumeContext): Action = {
val messageBody = new String(message.getBody, "UTF-8")
if (message.getReconsumeTimes > 0) {
CommonUtils.logger.warning("reconsumeTime: " + message.getReconsumeTimes)
}
import StatusChangeMessageJsonProtocol._
try {
println("12323432423")
println(messageBody)
val messageaa=messageBody.parseJson.convertTo[StatusChangeMessage]
println(messageaa.addressId.getOrElse(""))
println(messageaa.contactName.getOrElse(""))
println(messageaa.extraParam.sellerName.getOrElse(""))
} catch {
case e: Exception => {
println(e)
return Action.ReconsumeLater
}
}
Eval的使用
import scala.reflect.runtime.universe
import scala.tools.reflect.ToolBox
val tb = universe.runtimeMirror(getClass.getClassLoader).mkToolBox()
tb.eval(tb.parse("""println("hello!")"""))
函数参数
import scala.util.{Try, Success, Failure}:https://blog.csdn.net/jasonding1354/article/details/46822417