У меня есть карта хешей, и я добавил 2 значения в эту карту.После этого я хочу преобразовать в json, но он отображается в виде строки после преобразования json с использованием jackson.ниже мой код:
Map<String, Map<String, String>> attributes = new HashMap<String, Map<String, String>>();
Map<String, String> values = new HashMap<String, String>();
Map<String, String> metadata = new HashMap<String, String>();
metadata.put("type", test.getType().toString());
metadata.put("id", test.getId());
String metadataStr = metadata.toString();
String replaceStr = metadataStr.replace("=", ":");
values.put("metadata", replaceStr);
attributes.put("caption", values);
Здесь я конвертирую атрибуты в json, как показано ниже:
String json = this.getObjectMapper().writeValueAsString(attributes);
{
"Test": {
"metadata": "{id:f600b8fa-77cf-4225-ba42-39135909c7ce, type:test}",
}
}
Но мне нужно, как показано ниже:
{
"Test": {
"metadata": {
"id":"f600b8fa-77cf-4225-ba42-39135909c7ce",
"type":"test" }
}
}
Может любойпомогите мне в этом.Заранее спасибо.