Ниже приведен пример создания контроллера ошибок Spring 404 на Java.
Во-первых, вам нужно создать класс, который будет служить вашим собственным контроллером ошибок. Этот класс должен расширять класс AbstractErrorControllerи обрабатывать аннотацию ErrorController. Вот пример:
import org.springframework.boot.web.servlet.error.ErrorController;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@RequestMapping("${server.error.path:${error.path:/error}}")
public class CustomErrorController implements ErrorController {
@RequestMapping
public String handleError() {
// Handle the 404 error here
return "error404"; // or any other view name you want to show
}
@Override
public String getErrorPath() {
return "/error";
}
}
В приведенном выше примере класс CustomErrorControllerобрабатывает сопоставление запроса для пути ошибки, указанного в свойствах приложения (${server.error.path:${error.path:/error}}). Метод handleError()обрабатывает ошибку 404, возвращая имя представления, которое должно отображаться при возникновении ошибки 404. В этом случае возвращается «error404», но вы можете заменить его именем нужного представления.
Чтобы использовать этот собственный контроллер ошибок, вам необходимо настроить его в своем приложении. Вы можете сделать это, добавив следующий компонент в свой класс конфигурации:
import org.springframework.boot.autoconfigure.web.servlet.error.ErrorMvcAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class AppConfig extends ErrorMvcAutoConfiguration {
@Bean
public CustomErrorController customErrorController() {
return new CustomErrorController();
}
}
При такой конфигурации Spring будет использовать ваш собственный контроллер ошибок вместо механизма обработки ошибок по умолчанию для обработки ошибок 404.
Блог
В этой статье блога мы рассмотрим, как создать собственный контроллер ошибок в Spring для обработки ошибок 404. Мы предоставим подробное объяснение необходимых шагов и добавим примеры кода для каждого шага. К концу этой статьи вы получите четкое представление о том, как реализовать собственный контроллер ошибок в вашем приложении Spring для эффективной обработки ошибок 404.