From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master
---
jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/JsonNodeAsStringDeserializer.java | 41 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/JsonNodeAsStringDeserializer.java b/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/JsonNodeAsStringDeserializer.java
new file mode 100644
index 0000000..b646502
--- /dev/null
+++ b/jnpf-lims/jnpf-lims-entity/src/main/java/jnpf/limsEntity/JsonNodeAsStringDeserializer.java
@@ -0,0 +1,41 @@
+package jnpf.limsEntity;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.core.JsonToken;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
+
+import java.io.IOException;
+
+/**
+ * 鍏煎 String / Array / Object 鐨勫弽搴忓垪鍖栧櫒銆�
+ * 鐢ㄤ簬闇�瑕�"鎶婂鏉� JSON 鍊煎師鏍峰瓨鍒� text 瀛楁銆佸洖鏄炬椂 JSON.parse"鐨勫満鏅紝
+ * 渚嬪鍓嶇浼犵殑闄勪欢鏁扮粍 [{fileId, url, ...}]锛屽悗绔瓨 JSON 瀛楃涓插埌 DB銆�
+ *
+ * <p>瑙勫垯锛�
+ * <ul>
+ * <li>null 鈫� null</li>
+ * <li>瀛楃涓� 鈫� 鍘熸牱瀛楃涓�</li>
+ * <li>鏁扮粍 / 瀵硅薄 / 鏁板瓧 / 甯冨皵 鈫� 鑺傜偣鐨� JSON 瀛楃涓插舰寮�</li>
+ * </ul>
+ */
+public class JsonNodeAsStringDeserializer extends StdDeserializer<String> {
+
+ public JsonNodeAsStringDeserializer() {
+ super(String.class);
+ }
+
+ @Override
+ public String deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
+ JsonToken t = p.currentToken();
+ if (t == JsonToken.VALUE_NULL) {
+ return null;
+ }
+ if (t == JsonToken.VALUE_STRING) {
+ return p.getValueAsString();
+ }
+ JsonNode node = p.readValueAsTree();
+ return node.toString();
+ }
+}
--
Gitblit v1.8.0