Spring Boot — Возвращает пустой массив объектов

#spring #spring-boot

Вопрос:

Я пытаюсь выполнить простое ПОЛУЧЕНИЕ, и когда я запускаю и вставляю каталог, он возвращает пустой массив:

Это мой класс:

 public class Movie {  String directory;  String name;  boolean isPlaying;  int watchedCounter;   public Movie(String directory, String name, boolean isPlaying, int watchedCounter) {  this.directory = directory;  this.name = name;  this.isPlaying = isPlaying;  this.watchedCounter = watchedCounter;  } }  

Мой Контроллер:

 @RestController @RequestMapping(path = "/api/vod") public class MovieConroller {  private final MovieService movieService;   @Autowired  public MovieConroller(MovieService movieService) {  this.movieService = movieService;  }   @GetMapping  public List lt; Movie gt; getMovies() {  return movieService.getMovies();  } }  

Моя Служба:

 @Service public class MovieService {  public List lt; Movie gt; getMovies() {  List lt; Movie gt; movies = new ArrayList lt; gt; ();  movies.add(new Movie("home", "film.avi", true, 0));  movies.add(new Movie("house", "fil2m.avi", false, 1));  return movies;  } }  

И это мои свойства приложения:

 spring.data.mongodb.authentication-database=admin spring.data.mongodb.username=ad spring.data.mongodb.password=pas spring.data.mongodb.database=mov spring.data.mongodb.port=27017 spring.data.mongodb.host=localhost spring.jackson.serialization.FAIL_ON_EMPTY_BEANS=false  

URL-адрес : http://localhost:8080/api/vod
Результат : [{}{}]

Может кто-нибудь помочь, пожалуйста?
С уважением

Комментарии:

1. У вас есть getters и setters в Movie классе?

2. Привет, нет. Это настоящий проект

Ответ №1:

Проблема заключается в отсутствии getters и. setters

Обычно он выдает ошибку, но при ее использовании spring.jackson.serialization.FAIL_ON_EMPTY_BEANS=false возвращается {} , потому что не может сериализовать объекты.

Если вы добавите getters , и setters он вернет список с заполненными объектами.