Не находит ссылки PostMapping Spring IntellijIDEA
Почему-то при переходе по ссылке, программа говорит что такой ссылке не существует. В чём может быть проблема. Создал простое приложение для демонстрации.
package ru.leaning.test;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class TestApplication {
public static void main(String[] args) {
SpringApplication.run(TestApplication.class, args);
}
}
package controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class Test {
@PostMapping("/")
public Integer getTest() {
System.out.println("test");
return 2;
}
}
Обновил скрншоты
Post - запрос:
Get - запрос:
Ответы (1 шт):
Вы создали эндпойнт для POST-запроса, но пытаетесь попасть на него через GET-запрос.
Учитывая, что на самом деле вы ничего не "постите" на этот эндпойнт, поменяйте аннотацию маппинга с @PostMapping на @GetMapping:
@RestController
public class Test {
@GetMapping("/") // <- вот здесь
public Integer getTest() {
// какой-то код
}
}
Или же в Postman слева от адресной строки поменяйте GET на POST, чтобы попасть на существующий эндпойнт.
ДОПОЛНЕНИЕ:
Был не прав, ошибка в другом - класс контроллера просто не виден вашему Spring приложению.
Сделайте так, чтобы директория "controller" находилась внутри директории "ru.learning.test".
Дело в том, что класс, помеченный аннотацией @SpringBootApplication, по умолчанию включает @ComponentScan только для той директории, где находится этот класс, и всех директорий, находящихся внутри нее.
Об этом можно почитать здесь.





