Skip to content

Commit

Permalink
修复JSONConfig.setDateFormat设置后setWriteLongAsString失效问题
Browse files Browse the repository at this point in the history
  • Loading branch information
looly committed Aug 24, 2024
1 parent 227a6ef commit 63b2f7c
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 23 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# 🚀Changelog

-------------------------------------------------------------------------------------------------------------
# 5.8.32(2024-08-22)
# 5.8.32(2024-08-24)

### 🐣新特性

Expand All @@ -11,6 +11,7 @@
* 【crypto 】 修复SymmetricCrypto.setParams和setRandom没有加锁问题(issue#IAJIY3@Gitee)
* 【crypto 】 修复ZipUtil压缩成流的方法检查文件时报错问题(issue#3697@Github)
* 【core 】 修复CopyOptions.setFieldValueEditor后生成null值setIgnoreNullValue无效问题(issue#3702@Github)
* 【json 】 修复JSONConfig.setDateFormat设置后setWriteLongAsString失效问题(issue#IALQ0N@Gitee)

-------------------------------------------------------------------------------------------------------------
# 5.8.31(2024-08-12)
Expand Down
16 changes: 2 additions & 14 deletions hutool-json/src/main/java/cn/hutool/json/JSONUtil.java
Original file line number Diff line number Diff line change
@@ -1,15 +1,10 @@
package cn.hutool.json;

import cn.hutool.core.convert.NumberWithFormat;
import cn.hutool.core.io.IORuntimeException;
import cn.hutool.core.io.file.FileReader;
import cn.hutool.core.lang.TypeReference;
import cn.hutool.core.map.MapWrapper;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ClassUtil;
import cn.hutool.core.util.HexUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.*;
import cn.hutool.json.serialize.GlobalSerializeMapping;
import cn.hutool.json.serialize.JSONArraySerializer;
import cn.hutool.json.serialize.JSONDeserializer;
Expand All @@ -23,11 +18,7 @@
import java.nio.charset.Charset;
import java.sql.SQLException;
import java.time.temporal.TemporalAccessor;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.*;

/**
* JSON工具类
Expand Down Expand Up @@ -763,9 +754,6 @@ public static Object wrap(Object object, JSONConfig jsonConfig) {
|| object instanceof Number //
|| ObjectUtil.isBasicType(object) //
) {
if(object instanceof Number && null != jsonConfig.getDateFormat()){
return new NumberWithFormat((Number) object, jsonConfig.getDateFormat());
}
return object;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,7 @@
import cn.hutool.core.util.CharUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSON;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONConfig;
import cn.hutool.json.JSONException;
import cn.hutool.json.JSONNull;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONString;
import cn.hutool.json.JSONUtil;
import cn.hutool.json.*;

import java.io.IOException;
import java.io.Writer;
Expand Down
19 changes: 19 additions & 0 deletions hutool-json/src/test/java/cn/hutool/json/IssueIALQ0NTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package cn.hutool.json;

import cn.hutool.core.date.DateUtil;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;

import java.util.HashMap;
import java.util.Map;

public class IssueIALQ0NTest {
@Test
void toJsonStrTest() {
Map<String, Object> map = new HashMap<>();
map.put("id", 1826166955313201152L);
map.put("createdDate", DateUtil.parse("2024-08-24"));
final String jsonStr = JSONUtil.toJsonStr(map, JSONConfig.create().setDateFormat("yyyy-MM-dd HH:mm:ss").setWriteLongAsString(true));
Assertions.assertEquals("{\"createdDate\":\"2024-08-24 00:00:00\",\"id\":\"1826166955313201152\"}", jsonStr);
}
}

0 comments on commit 63b2f7c

Please sign in to comment.