xufei 4 years ago
parent
commit
bf7f5b4208
1 changed files with 15 additions and 0 deletions
  1. 15 0
      src/main/scala/com/winhc/bigdata/spark/udf/JsonSerializable.scala

+ 15 - 0
src/main/scala/com/winhc/bigdata/spark/udf/JsonSerializable.scala

@@ -0,0 +1,15 @@
+package com.winhc.bigdata.spark.udf
+
+import org.json4s.DefaultFormats
+import org.json4s.jackson.JsonMethods
+
+/**
+ * π
+ */
+trait JsonSerializable {
+  override def toString: String = {
+    import org.json4s.jackson.Serialization._
+    implicit val df = DefaultFormats
+    JsonMethods.compact(JsonMethods.render(JsonMethods.parse(write(this)).snakizeKeys))
+  }
+}