mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-21 13:31:46 +00:00
Use JsonMapper instead of ObjectMapper when relevant
This commit updates Jackson 3 JSON support to use JsonMapper instead of ObjectMapper in converters, codecs and view constructors. As a consequence, AbstractJacksonDecoder, AbstractJacksonEncoder, AbstractJacksonHttpMessageConverter and JacksonCodecSupport are now parameterized with <T extends ObjectMapper>. Closes gh-35282
This commit is contained in:
+2
-2
@@ -45,7 +45,7 @@ import org.junit.jupiter.params.provider.ValueSource;
|
||||
import org.skyscreamer.jsonassert.JSONCompareMode;
|
||||
import org.skyscreamer.jsonassert.JSONCompareResult;
|
||||
import org.skyscreamer.jsonassert.comparator.JSONComparator;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
import tools.jackson.databind.json.JsonMapper;
|
||||
|
||||
import org.springframework.core.io.ByteArrayResource;
|
||||
import org.springframework.core.io.ClassPathResource;
|
||||
@@ -86,7 +86,7 @@ class AbstractJsonContentAssertTests {
|
||||
private static final String DIFFERENT = loadJson("different.json");
|
||||
|
||||
private static final HttpMessageContentConverter jsonContentConverter = HttpMessageContentConverter.of(
|
||||
new JacksonJsonHttpMessageConverter(new ObjectMapper()));
|
||||
new JacksonJsonHttpMessageConverter(new JsonMapper()));
|
||||
|
||||
private static final JsonComparator comparator = JsonAssert.comparator(JsonCompareMode.LENIENT);
|
||||
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ import org.assertj.core.data.Offset;
|
||||
import org.jspecify.annotations.Nullable;
|
||||
import org.junit.jupiter.api.Nested;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
import tools.jackson.databind.json.JsonMapper;
|
||||
|
||||
import org.springframework.http.converter.json.JacksonJsonHttpMessageConverter;
|
||||
import org.springframework.test.http.HttpMessageContentConverter;
|
||||
@@ -206,7 +206,7 @@ class JsonPathValueAssertTests {
|
||||
class ConvertToTests {
|
||||
|
||||
private static final HttpMessageContentConverter jsonContentConverter = HttpMessageContentConverter.of(
|
||||
new JacksonJsonHttpMessageConverter(new ObjectMapper()));
|
||||
new JacksonJsonHttpMessageConverter(new JsonMapper()));
|
||||
|
||||
@Test
|
||||
void convertToWithoutHttpMessageConverter() {
|
||||
|
||||
+8
-8
@@ -27,7 +27,7 @@ import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.params.ParameterizedTest;
|
||||
import org.junit.jupiter.params.provider.ValueSource;
|
||||
import tools.jackson.databind.JavaType;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
import tools.jackson.databind.json.JsonMapper;
|
||||
|
||||
import org.springframework.core.ParameterizedTypeReference;
|
||||
|
||||
@@ -385,14 +385,14 @@ class JsonPathExpectationsHelperTests {
|
||||
*/
|
||||
private static class JacksonMappingProvider implements MappingProvider {
|
||||
|
||||
private final ObjectMapper objectMapper;
|
||||
private final JsonMapper jsonMapper;
|
||||
|
||||
public JacksonMappingProvider() {
|
||||
this(new ObjectMapper());
|
||||
this(new JsonMapper());
|
||||
}
|
||||
|
||||
public JacksonMappingProvider(ObjectMapper objectMapper) {
|
||||
this.objectMapper = objectMapper;
|
||||
public JacksonMappingProvider(JsonMapper jsonMapper) {
|
||||
this.jsonMapper = jsonMapper;
|
||||
}
|
||||
|
||||
|
||||
@@ -402,7 +402,7 @@ class JsonPathExpectationsHelperTests {
|
||||
return null;
|
||||
}
|
||||
try {
|
||||
return objectMapper.convertValue(source, targetType);
|
||||
return jsonMapper.convertValue(source, targetType);
|
||||
}
|
||||
catch (Exception ex) {
|
||||
throw new MappingException(ex);
|
||||
@@ -416,10 +416,10 @@ class JsonPathExpectationsHelperTests {
|
||||
if (source == null){
|
||||
return null;
|
||||
}
|
||||
JavaType type = objectMapper.getTypeFactory().constructType(targetType.getType());
|
||||
JavaType type = jsonMapper.getTypeFactory().constructType(targetType.getType());
|
||||
|
||||
try {
|
||||
return (T) objectMapper.convertValue(source, type);
|
||||
return (T) jsonMapper.convertValue(source, type);
|
||||
}
|
||||
catch (Exception ex) {
|
||||
throw new MappingException(ex);
|
||||
|
||||
+3
-3
@@ -22,7 +22,7 @@ import java.util.Map;
|
||||
import com.jayway.jsonpath.Configuration;
|
||||
import com.jayway.jsonpath.TypeRef;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
import tools.jackson.databind.json.JsonMapper;
|
||||
|
||||
import org.springframework.http.codec.json.JacksonJsonDecoder;
|
||||
import org.springframework.http.codec.json.JacksonJsonEncoder;
|
||||
@@ -36,10 +36,10 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
*/
|
||||
class EncoderDecoderMappingProviderTests {
|
||||
|
||||
private static final ObjectMapper objectMapper = new ObjectMapper();
|
||||
private static final JsonMapper jsonMapper = new JsonMapper();
|
||||
|
||||
private final EncoderDecoderMappingProvider mappingProvider = new EncoderDecoderMappingProvider(
|
||||
new JacksonJsonEncoder(objectMapper), new JacksonJsonDecoder(objectMapper));
|
||||
new JacksonJsonEncoder(jsonMapper), new JacksonJsonDecoder(jsonMapper));
|
||||
|
||||
|
||||
@Test
|
||||
|
||||
+4
-4
@@ -19,7 +19,7 @@ package org.springframework.test.web.reactive.server;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
import tools.jackson.databind.ObjectMapper;
|
||||
import tools.jackson.databind.json.JsonMapper;
|
||||
|
||||
import org.springframework.http.codec.DecoderHttpMessageReader;
|
||||
import org.springframework.http.codec.EncoderHttpMessageWriter;
|
||||
@@ -39,13 +39,13 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
*/
|
||||
class JsonEncoderDecoderTests {
|
||||
|
||||
private static final ObjectMapper objectMapper = new ObjectMapper();
|
||||
private static final JsonMapper jsonMapper = new JsonMapper();
|
||||
|
||||
private static final HttpMessageWriter<?> jacksonMessageWriter = new EncoderHttpMessageWriter<>(
|
||||
new JacksonJsonEncoder(objectMapper));
|
||||
new JacksonJsonEncoder(jsonMapper));
|
||||
|
||||
private static final HttpMessageReader<?> jacksonMessageReader = new DecoderHttpMessageReader<>(
|
||||
new JacksonJsonDecoder(objectMapper));
|
||||
new JacksonJsonDecoder(jsonMapper));
|
||||
|
||||
@Test
|
||||
void fromWithEmptyWriters() {
|
||||
|
||||
Reference in New Issue
Block a user