jsonのシリアル化にfasterxml jacksonを使用しています。私は日付シリアライザをスプリングブートジャクソンのマッピングが機能しない
として書きましたが、呼び出されていません。しかし、他のジャクソンシリアライザは正常に動作しています。
だから私はapplication.yaml
spring:
jackson:
serialization-inclusion: non_null
date-format: dd.MM.yyyy
に以下の構成を追加しました。しかし、それは仕事をdin't。
このコードをSpringBootConfigurationクラスに追加しました。
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
final MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
final ObjectMapper objectMapper = new ObjectMapper();
SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false).setDateFormat(dateFormat);
converter.setObjectMapper(objectMapper);
converters.add(converter);
super.configureMessageConverters(converters);
}
日付が正しくシリアル化されています。しかし、有効なJSON相当の文字列は、前述のようにJSONに変換されていません。here
@RestController
public class SampleController {
@RequestMapping(value = "/jsonInfo", method = RequestMethod.GET, produces = APPLICATION_JSON_VALUE)
public String jsonInfo() {
String string = "{\"name\": \"foo\"}"
return string;
}
}
を試してみてください。だから問題がある1 –
あなたはそれをどう思う? –
のドキュメント1.4.0のドキュメントでは、プロパティベースの設定について話していません。しかし、1.4.1のドキュメントでは、@JsonComponentとプロパティベースの設定について話しました。 –