尝试在应用程序运行时进行错误处理,但数据库(MySQL)失去连接。
目前错误显示" ERR_TOO_MANY_REDIRECTS"
这可能是因为我使用下面的代码实现了一个CustomErrorController吗?
package com.teamlab.todolist.web;
import org.springframework.boot.autoconfigure.web.ErrorController;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import java.net.ConnectException;
@Controller
public class CustomErrorController implements ErrorController {
@GetMapping("/error")
String backToTopePage() {
return "redirect:/todoLists";
}
public String getErrorPath() {
return "/todoLists";
}
try {
} catch (ConnectException e) {
return "error/database";
}
}
以上代码是这样的,当用户输入不存在的URL时,用户将被重定向到首页。
无论如何,我想知道如何在MySQL失去连接时实现错误处理功能。想要像MySQL丢失连接错误一样显示。
在Spring Boot的控制台上,我得到了:
java.net.ConnectException:拒绝连接(拒绝连接)
我应该在CustomErrorController中创建一个try catch块吗?我不确定try块内的内容......
答案 0 :(得分:1)
您没有显示哪个Controller重定向到/ error。在ConnectionException的情况下,处理/ todoLists的Controller很可能重定向到/ error。如果确实如此,那么正在发生的事情是/ todoLists重定向到/ error和/ error重定向到/ todoLists。因此,浏览器抱怨重定向问题太多。