java-如何处理无法连接数据库的异常?

标签 java mysql

我正在用Java编写一些程序,涉及MySQL数据库。众所周知,大多数程序都需要使用数据库。

正如我所想,应用程序中可能存在可以处理的异常,例如:

Failed to insert to db
table does not exist
etc

当我捕获此类异常时,我可以选择以错误代码的形式将此错误消息存储在表中的 Error 列下。

现在考虑一下,要在应用程序和数据库之间建立连接,在程序运行之前我需要 IP 及其用户名和密码。

在这种情况下,如果我通过提供错误的密码来“破坏”程序,或者在应用程序运行时轻松终止 MySQL 服务。如果发生这种情况,应用程序将抛出某种数据库错误连接,因为它无法连接到它。同时,由于程序和数据库之间没有建立连接,我无法更新表的 Error 列。

我似乎无法找出处理此问题的最佳方法,或者是否有办法做到这一点。

如何处理这种情况?

最佳答案

方法#1

您可以将这些错误记录在日志文件中。 如果您确实想将每个错误添加到数据库中,那么稍后您可以通过抓取日志文件来获取错误并将它们插入到数据库中。

方法#2

您可以尝试重新连接到数据库,如果成功,请将错误写入数据库。如果无法连接,那么您可以退回到方法#1。

关于java-如何处理无法连接数据库的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53644538/

相关文章:

java - 跨领域身份验证后的 Keycloak 领域特定授权

java - 如何从匿名内部类中获取值(value)?

java - 更新数据库会在“待办事项列表”应用程序中引发错误

MySQL 选择和限制计算复杂度

mysql - 将一个主键设置为多个表的外键的任何简单方法

mysql - 无法将 PDF 套件生成的文件保存到 Rails 3.2.15 中的回形针附件

java - 枚举是否允许在 Java 中有 setter?

java - 如何在 Spring 中调用外部 API 来测试服务

php - 选择特定距离内的点

MySQL 查询计算唯一列的行数