当我尝试从http://localhost:8080/Films/showAll访问网站时,出现404 http错误。因此,我尝试其他地址,并且从http://localhost:8080/showAll看到406 http错误。 控制器类如下所示:
package Films.controller;
import Films.dao.DirectorDAO;
import Films.dao.FilmDAO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Scanner;
@RestController
// klasa odpowiada za pobieranie oraz przsył danych wykorzystywanych w DAO
public class FilmOperationController {
......
// metoda zwraca listę wszystkich filmów bazie
@RequestMapping(value = "/showAll", produces = MediaType.APPLICATION_JSON_VALUE, method = RequestMethod.GET)
@Transactional(readOnly = true)
public List<Object[]> showAll() {
return filmDao.getAllFilms();
}
....
}
这是pom.xml和Java配置文件。 https://github.com/lukasz-chojn/films_database/blob/master/pom.xml https://github.com/lukasz-chojn/films_database/blob/master/src/main/java/Films/component/Config.java
有什么主意吗?
答案 0 :(得分:0)
@RestController
应该由Rest Client(而不是浏览器)使用。
为了测试这种控制器,您可以使用其他工具,例如curl或Postman。
下面是一个示例,说明如何通过带有终端的curl使用curl http://localhost:8080/showAll
答案 1 :(得分:0)
我花了几个小时来调试您的问题。有很多未使用的依赖项和代码。我重构了代码,并解决了问题。
这是下载链接
https://github.com/deepakjain0812/testrepo
请在您的本地计算机上运行它,如果发现任何问题,请通知我。
一旦您确认不再遇到状态码(如500、401或406)的问题,我将删除此存储库