我的Spring Boot应用程序试图在启动时加载一些证书文件。我希望能够在文件无法加载时显示一个明智的消息,而不是一个巨大的堆栈跟踪。
@SpringBootApplication
public class FileLoadTestApplication {
public static void main(String[] args) {
try {
SpringApplication.run(FileLoadTestApplication .class, args);
} catch (Exception e) {
LOGGER.error("Application ending due to an error.");
if (e.getClass().equals(ConfigException.class)) {
if (e.getCause().getClass().equals(FileNotFoundException.class)) {
LOGGER.error("Unable to read file: " + e.getCause().getMessage());
} else {
LOGGER.error("Initial configuration failed.", e.getCause());
}
}
}
}
}
如何在启动时控制一些异常,以便在关闭前显示一条信息性消息?
您可以捕获BeanCreationException
并将其展开以获取原始原因。您可以使用以下代码片段
public static void main(String[] args) {
try {
SpringApplication.run(FileLoadTestApplication.class, args);
} catch (BeanCreationException ex) {
Throwable realCause = unwrap(ex);
// Perform action based on real cause
}
}
public static Throwable unwrap(Throwable ex) {
if (ex != null && BeanCreationException.class.isAssignableFrom(ex.getClass())) {
return unwrap(ex.getCause());
} else {
return ex;
}
}
当@PostConstruct
注释方法抛出异常时,Spring将其包装在BeanCreationException
中并抛回。
我有一个spring-boot应用程序,没有任何控制器类。如何为该应用程序编写异常处理程序。用@ControllerAdvice注释的异常处理程序类不起作用。
我已经安装了tarantool(tarantool_box)和tarantool客户端。我可以开始塔兰托了 但是当我试图连接到服务器时 我只看到管理员控制台 并且只能使用一些命令和类似sql的查询。我无法使用《用户指南》中的任何命令,并且几乎所有以开头的命令都会失败:
问题内容: 我希望在启动应用程序并开始在我拥有的文本字段中键入内容时,键盘向上滑动。 问题答案: 在您的方法中,添加以下内容: 有关详细信息的,查看文档。
过去几天我一直在处理phpmyadmin。一切工作都很好,直到我看到这个问题,但昨天没有。 我不明白的是,这几天问题都不在那里,所以我真的不知道出了什么问题。 我尝试从我的目录中删除文件夹,但每次我在xampp控制面板上启动mysql,它都会一次又一次地出现。 谁能给我一个妥善的解决办法吗?我会非常感激的。谢谢你。
The ConsoleLauncher is a command-line Java application that lets you launch the JUnit Platform from the console. For example, it can be used to run JUnit Vintage and JUnit Jupiter tests and print test
我的springboot微服务依赖于AS400 DB2,当服务启动时,它可能会关闭。该服务有一个配置bean,它有autowired的基于JpaRepository的存储库。在启动期间,当DB2关闭时,我得到以下消息: