gpt4 book ai didi

java - 缺少 InitialContext 定义时使用哪个 Java 运行时异常

转载 作者:行者123 更新时间:2023-12-02 10:57:41 24 4
gpt4 key购买 nike

我正在编写一个 Java Servlet 应用程序,该应用程序需要存在某些环境变量和 JNDI 定义。这些在 server.xml 文件中定义。使用默认值是不可能的。因此程序需要抛出运行时(未经检查的)异常。但哪一个呢?如果 java.lang.RuntimeException 的子类都不合适,我想我们需要创建一个新类型。

最佳答案

你可以使用已经定义的异常,但我通常只是实现自己的异常,因为当它抛出时我总是可以快速识别它。 (它可以通过项目的类路径告诉您更多信息。)

public class MissingInitialContextException extends RuntimeException {
public MissingInitialContextException() {
}

public MissingInitialContextException(String message) {
super(message);
}

public MissingInitialContextException(String message, Throwable cause) {
super(message, cause);
}

public MissingInitialContextException(Throwable cause) {
super(cause);
}

public MissingInitialContextException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
super(message, cause, enableSuppression, writableStackTrace);
}
}

您可以在大多数 IDE 中自动生成这样的类。 (IDEA,创建类后,按 ALT+ENTER 并覆盖 RuntimeException 类中的方法)

为什么要使用自定义异常:

  • 您可以使用 IDE 的查找实现和其他搜索功能来查找用法
  • 在某些框架(例如 Spring Boot)中,您可以使用注释来修饰异常并快速定义响应文本和 http 错误代码。
  • 您可以稍后更改异常的实现。
  • 您可以在 IDE 中为自定义异常定义异常时自动中断,而如果您为内置异常执行此操作,调试器将在意外的行中停止。
  • 您可以避免无意中捕获其他库的异常。

关于java - 缺少 InitialContext 定义时使用哪个 Java 运行时异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51591204/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com