diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/JSONGetter.java b/hutool-json/src/main/java/org/dromara/hutool/json/JSONGetter.java index 6cae06414..6bae91072 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/JSONGetter.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/JSONGetter.java @@ -18,6 +18,7 @@ package org.dromara.hutool.json; import org.dromara.hutool.core.lang.getter.TypeGetter; import org.dromara.hutool.core.util.ObjUtil; +import org.dromara.hutool.json.support.InternalJSONUtil; import java.lang.reflect.Type; import java.util.List; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/JSONObject.java b/hutool-json/src/main/java/org/dromara/hutool/json/JSONObject.java index 188716ca0..716711fb8 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/JSONObject.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/JSONObject.java @@ -25,6 +25,7 @@ import org.dromara.hutool.core.map.MapUtil; import org.dromara.hutool.core.map.MapWrapper; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.util.ObjUtil; +import org.dromara.hutool.json.support.InternalJSONUtil; import org.dromara.hutool.json.writer.JSONWriter; import java.util.Arrays; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/reader/JSONParser.java b/hutool-json/src/main/java/org/dromara/hutool/json/reader/JSONParser.java index 7999c58af..73effc8ec 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/reader/JSONParser.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/reader/JSONParser.java @@ -19,6 +19,7 @@ package org.dromara.hutool.json.reader; import org.dromara.hutool.core.lang.mutable.MutableEntry; import org.dromara.hutool.core.text.CharUtil; import org.dromara.hutool.json.*; +import org.dromara.hutool.json.support.InternalJSONUtil; import java.util.function.Predicate; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/serializer/impl/BeanTypeAdapter.java b/hutool-json/src/main/java/org/dromara/hutool/json/serializer/impl/BeanTypeAdapter.java index 74e1c417f..245aabb05 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/serializer/impl/BeanTypeAdapter.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/serializer/impl/BeanTypeAdapter.java @@ -23,7 +23,7 @@ import org.dromara.hutool.core.lang.copier.Copier; import org.dromara.hutool.core.reflect.ConstructorUtil; import org.dromara.hutool.core.reflect.TypeUtil; import org.dromara.hutool.core.util.ObjUtil; -import org.dromara.hutool.json.InternalJSONUtil; +import org.dromara.hutool.json.support.InternalJSONUtil; import org.dromara.hutool.json.JSON; import org.dromara.hutool.json.JSONConfig; import org.dromara.hutool.json.JSONObject; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/InternalJSONUtil.java b/hutool-json/src/main/java/org/dromara/hutool/json/support/InternalJSONUtil.java similarity index 88% rename from hutool-json/src/main/java/org/dromara/hutool/json/InternalJSONUtil.java rename to hutool-json/src/main/java/org/dromara/hutool/json/support/InternalJSONUtil.java index d3d769dc0..17931addf 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/InternalJSONUtil.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/support/InternalJSONUtil.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.dromara.hutool.json; +package org.dromara.hutool.json.support; import org.dromara.hutool.core.bean.copier.CopyOptions; import org.dromara.hutool.core.codec.binary.HexUtil; @@ -24,6 +24,9 @@ import org.dromara.hutool.core.map.CaseInsensitiveTreeMap; import org.dromara.hutool.core.text.CharUtil; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.util.ObjUtil; +import org.dromara.hutool.json.JSON; +import org.dromara.hutool.json.JSONConfig; +import org.dromara.hutool.json.JSONFactory; import org.dromara.hutool.json.serializer.JSONMapper; import java.io.IOException; @@ -120,32 +123,6 @@ public final class InternalJSONUtil { .setConverter((targetType, value) -> mapper.toJSON(value, false)); } - /** - * 对所有双引号做转义处理(使用双反斜杠做转义)
- * 为了能在HTML中较好的显示,会将</转义为<\/
- * JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 - * - * @param string 字符串 - * @return 适合在JSON中显示的字符串 - */ - public static String quote(final CharSequence string) { - return quote(string, true); - } - - /** - * 对所有双引号做转义处理(使用双反斜杠做转义)
- * 为了能在HTML中较好的显示,会将</转义为<\/
- * JSON字符串中不能包含控制字符和未经转义的引号和反斜杠 - * - * @param string 字符串 - * @param isWrap 是否使用双引号包装字符串 - * @return 适合在JSON中显示的字符串 - * @since 3.3.1 - */ - public static String quote(final CharSequence string, final boolean isWrap) { - return quote(string, new StringBuilder(), isWrap).toString(); - } - /** * 对所有双引号做转义处理(使用双反斜杠做转义)
* 为了能在HTML中较好的显示,会将</转义为<\/
@@ -207,7 +184,7 @@ public final class InternalJSONUtil { * @param factory JSON工厂,{@code null}则使用默认配置 * @return Map */ - static Map createRawMap(final int capacity, final JSONFactory factory) { + public static Map createRawMap(final int capacity, final JSONFactory factory) { final JSONConfig config = ObjUtil.apply(factory, JSONFactory::getConfig); final boolean ignoreCase = ObjUtil.defaultIfNull(config, JSONConfig::isIgnoreCase, false); final Comparator keyComparator = ObjUtil.apply(config, JSONConfig::getKeyComparator); diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/writer/JSONWriter.java b/hutool-json/src/main/java/org/dromara/hutool/json/writer/JSONWriter.java index 994a4aece..336901048 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/writer/JSONWriter.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/writer/JSONWriter.java @@ -23,7 +23,7 @@ import org.dromara.hutool.core.regex.ReUtil; import org.dromara.hutool.core.text.CharUtil; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.util.ObjUtil; -import org.dromara.hutool.json.InternalJSONUtil; +import org.dromara.hutool.json.support.InternalJSONUtil; import org.dromara.hutool.json.JSON; import org.dromara.hutool.json.JSONConfig; import org.dromara.hutool.json.JSONException; @@ -232,7 +232,8 @@ public class JSONWriter implements Appendable, Flushable, Closeable { } // 换行缩进 writeLF().writeSpace(indent); - return writeRaw(InternalJSONUtil.quote(key)); + writeQuoteStrValue(key); + return this; } @Override diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/xml/JSONXMLParser.java b/hutool-json/src/main/java/org/dromara/hutool/json/xml/JSONXMLParser.java index 54a2ad6bd..7e01b3197 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/xml/JSONXMLParser.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/xml/JSONXMLParser.java @@ -20,7 +20,7 @@ import org.dromara.hutool.core.lang.mutable.MutableEntry; import org.dromara.hutool.core.text.CharUtil; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.xml.XmlConstants; -import org.dromara.hutool.json.InternalJSONUtil; +import org.dromara.hutool.json.support.InternalJSONUtil; import org.dromara.hutool.json.JSONException; import org.dromara.hutool.json.JSONObject; import org.dromara.hutool.json.JSONUtil;