Почему я не могу отправить список строк в виде ответа JSON в Spring Rest? ⇐ JAVA

Программисты JAVA общаются здесь
Anonymous
Почему я не могу отправить список строк в виде ответа JSON в Spring Rest?

Сообщение Anonymous »

Я создал простое приложение с пружинным отдыхом, которое имеет только один контроллер отдыха.
DemoRestController.java:

Код: Выделить всё

import java.util.Arrays;
import java.util.List;

import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/test")
public class DemoRestController {

@GetMapping("/hello")
public String sayHello() {
return "Hello";
}

@GetMapping(value="/get-fruits", consumes=MediaType.ALL_VALUE, produces=MediaType.APPLICATION_JSON_VALUE)
public List getFruits() {
List fruits = Arrays.asList("Apple", "Banana", "Pear");
return fruits;
}
}

При запуске этого приложения я получаю:

Код: Выделить всё

org.springframework.web.servlet.handler.AbstractHandlerExceptionResolver logException
WARNING: Resolved [org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class java.util.Arrays$ArrayList] with preset Content-Type 'null']
Я добавил все библиотеки Джексона для сериализации и десериализации json в WebContent\WEB-INF\lib. Я сейчас не использую maven. Я вручную добавил зависимости Spring и Jackson в целях обучения.
Не будут ли такие типы, как массив встроенных типов (например, массив строк) или список встроенных типов (список строки) автоматически конвертируются в формат json?
А что, если у нас есть собственный тип/сущность, которую мы хотим отправить в ответ, например список студентов, будем ли мы использовать ResponseEntity? Приведите пример.
Большое спасибо.

Подробнее здесь: https://stackoverflow.com/questions/791 ... pring-rest

Вернуться в «JAVA»