春天不能服务终点

时间:2017-09-17 12:39:40

标签: spring

我有一个简单的Spring后端。它有一个包含控制器的文件夹。

package com.movieseat.controllers;

// Java imports
import java.util.List;

// Spring imports
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

// Project imports
import com.movieseat.models.Movie;
import com.movieseat.services.MovieService;

@RestController
@RequestMapping("/api/movies")
public class MovieController {

    @Autowired
    private MovieService movieService;

    @RequestMapping(value = "/allMovies", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
    public List<Movie> getAllMovies() {

        return movieService.getAllmovies();
    }     
}

在我的Angular服务中,我有一个getAll()方法:

public getAll<T>(): Observable<T[]> {
    return this.http.get<T[]>('/api/movies/allMovies');
}

当我运行应用程序时,我得到了一个:

  

获取http://localhost:8090/api/movies/allMovies 404()

我让服务器在端口8090上运行。

使用以下结构:

  • COM
    • movieseat
      • Application.java
      • 控制器
        • MovieController.java
      • 模型
        • MovieModel.java
      • 存储库
        • MovieRepository.java
      • 服务
        • IMPL
          • MovieServiceImpl.java
        • MovieService.java

1 个答案:

答案 0 :(得分:0)

查看您的控制器类是否通过弹簧扫描拾取并正确执行映射。例如 - 如果您使用的是Spring Boot,请在运行该应用程序的主类上放置@SpringBootApplication。了解您的端点是否被扫描的最佳方法是在春季启动时(在日志中)查找它。你应该寻找像

这样的东西
?=id1