diff --git a/src/main/java/com/alibaba/fastjson/serializer/DateCodec.java b/src/main/java/com/alibaba/fastjson/serializer/DateCodec.java index 31df03ae4f..66d2590e28 100644 --- a/src/main/java/com/alibaba/fastjson/serializer/DateCodec.java +++ b/src/main/java/com/alibaba/fastjson/serializer/DateCodec.java @@ -51,7 +51,7 @@ public void write(JSONSerializer serializer, Object object, Object fieldName, Ty } Class clazz = object.getClass(); - if (clazz == java.sql.Date.class && !out.isEnabled(SerializerFeature.WriteDateUseDateFormat)) { + if (clazz == java.sql.Date.class && (!out.isEnabled(SerializerFeature.WriteDateUseDateFormat)||out.isEnabled(SerializerFeature.WriteSqlDateUseDefaultFormat))) { long millis = ((java.sql.Date) object).getTime(); TimeZone timeZone = serializer.timeZone; int offset = timeZone.getOffset(millis); diff --git a/src/main/java/com/alibaba/fastjson/serializer/SerializerFeature.java b/src/main/java/com/alibaba/fastjson/serializer/SerializerFeature.java index 21a0ee949e..69403bdd45 100644 --- a/src/main/java/com/alibaba/fastjson/serializer/SerializerFeature.java +++ b/src/main/java/com/alibaba/fastjson/serializer/SerializerFeature.java @@ -152,7 +152,11 @@ public enum SerializerFeature { /** * @since 1.2.27 */ - MapSortField; + MapSortField, + /** + * java.sql.date按数据库默认格式进行格式化 + */ + WriteSqlDateUseDefaultFormat; SerializerFeature(){ mask = (1 << ordinal());