fix: sa-token-snack3 优化 objectToJson 序列化处理(增加类名,但不增加根类名)

This commit is contained in:
noear
2025-05-09 10:05:20 +08:00
parent 1c0831bd94
commit c70152962a

View File

@@ -17,6 +17,7 @@ package cn.dev33.satoken.json;
import cn.dev33.satoken.util.SaFoxUtil; import cn.dev33.satoken.util.SaFoxUtil;
import org.noear.snack.ONode; import org.noear.snack.ONode;
import org.noear.snack.core.Feature;
/** /**
* JSON 转换器, Snack3 版实现 * JSON 转换器, Snack3 版实现
@@ -32,10 +33,10 @@ public class SaJsonTemplateForSnack3 implements SaJsonTemplate {
*/ */
@Override @Override
public String objectToJson(Object obj) { public String objectToJson(Object obj) {
if(SaFoxUtil.isEmpty(obj)) { if (SaFoxUtil.isEmpty(obj)) {
return null; return null;
} }
return ONode.stringify(obj); return ONode.loadObj(obj, Feature.WriteClassName, Feature.NotWriteRootClassName).toJson();
} }
/** /**
@@ -43,7 +44,7 @@ public class SaJsonTemplateForSnack3 implements SaJsonTemplate {
*/ */
@Override @Override
public <T> T jsonToObject(String jsonStr, Class<T> type) { public <T> T jsonToObject(String jsonStr, Class<T> type) {
if(SaFoxUtil.isEmpty(jsonStr)) { if (SaFoxUtil.isEmpty(jsonStr)) {
return null; return null;
} }
return ONode.deserialize(jsonStr, type); return ONode.deserialize(jsonStr, type);