Spring Data JPA findAll () или findbyId () возвращают неправильное значение при загрузке Spring - PullRequest
0 голосов
/ 07 августа 2020

Я сейчас борюсь с методом findAll (), когда пытаюсь получить данные с SQL сервера, вот мой код:

Alien:

 @Entity
public class Alien {
    @Id
    private String aid;
    private String name;
    private String tech;

AlienController:

@Controller
public class AlienController {

@Autowired
AlienRepository repo;

@RequestMapping("/")
public String home() {
    return "home.jsp";
}
@RequestMapping("/getAliens")
@ResponseBody
public String getAlien() {
    return repo.findAll().toString();
  }
}

Репозиторий

public interface AlienRepository extends CrudRepository<Alien, String>{

}

И моя проблема в том, что всякий раз, когда я пытаюсь получить всех пришельцев в моей БД, я обычно получаю это значение

[com.example.demo.model.Alien@1f012f9c, com.example.demo.model.Alien@553ee2df, com.example.demo.model.Alien@67c572ce]

Обычно это должно быть вернуть значение Чужого, такое как помощь, имя и технология, но все, что у меня есть, это

Ответы [ 2 ]

1 голос
/ 07 августа 2020

Вы можете отправить данные как List<Alien> и использовать MediaType.APPLICATION_JSON_VALUE для получения json ответа

  @RequestMapping("/getAliens", produces = MediaType.APPLICATION_JSON_VALUE)
  @ResponseBody
  public List<Alien> getAlien() {
    return repo.findAll();
  }

Или определить метод toString в классе Alien, если вы хотите вернуть список в виде строки

0 голосов
/ 07 августа 2020

Значение com.example.demo.model.Alien@1f012f9c возвращается по умолчанию для метода toString().

Добавьте toString() ваш класс Alien.

Пример:

@Entity
public class Alien {

  @Id
  private String aid;
  private String name;
  private String tech;

  @Override
  public String toString() {
    return "Alien{" +
            "aid='" + aid + '\'' +
            ", name='" + name + '\'' +
            ", tech='" + tech + '\'' +
            '}';
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...