修复DayOfWeek转json异常问题

This commit is contained in:
Looly
2022-08-30 22:59:34 +08:00
parent 87a1cec9ed
commit 9fc7c40af9
5 changed files with 102 additions and 0 deletions

View File

@@ -22,6 +22,9 @@ import cn.hutool.json.JSONUtil;
import java.io.IOException;
import java.io.Writer;
import java.time.DayOfWeek;
import java.time.MonthDay;
import java.time.chrono.Era;
import java.time.temporal.TemporalAccessor;
import java.util.Calendar;
import java.util.Date;
@@ -262,6 +265,14 @@ public class JSONWriter extends Writer {
} else if (value instanceof Number) {
writeNumberValue((Number) value);
} else if (value instanceof Date || value instanceof Calendar || value instanceof TemporalAccessor) {
// issue#2572@Github
if(value instanceof TemporalAccessor){
if(value instanceof DayOfWeek || value instanceof java.time.Month || value instanceof Era || value instanceof MonthDay){
writeStrValue(value.toString());
return this;
}
}
final String format = (null == config) ? null : config.getDateFormat();
writeRaw(formatDate(value, format));
} else if (value instanceof Boolean) {