相关疑难解决方法(0)

为什么不鼓励在Java EE容器中生成线程?

我学到的关于Java EE开发的第一件事就是我不应该在Java EE容器中生成我自己的线程.但是当我开始思考它时,我不知道原因.

你能清楚地解释为什么气馁吗?

我相信大多数企业应用程序都需要某种异步工作,如邮件守护进程,空闲会话,清理工作等.

因此,如果确实不应该生成线程,那么在需要时执行它的正确方法是什么?

java multithreading java-ee

118
推荐指数
4
解决办法
5万
查看次数

Java - 应该在何处以及如何使用异常?

我正在阅读有关Java中异常处理的一些内容,以便能够编写更好的代码.好吧,我承认,我很内疚; 我已经使用了太多的try-catch {}块,我已经ex.printStackTrace()在catch中使用了,甚至没有使用正确的记录器(实际上System.out并且System.err被重定向到a PrintWriter,因此生成了日志).然而,经过几个小时的阅读,我发现自己处在一个陌生的地方:未知.如果异常被设计为传递有关流的异常状态的信息,那么如何知道WHERE是用该信息做某事的适当级别?

例如,当发生数据库错误时,是应该返回空值还是错误代码,还是抛出异常?如果抛出,那么应该处理该异常?据我所知,如果你不能对它做任何事情,那么记录异常是没用的.但是,在GUI应用程序中,这可能很容易杀死你的GUI(我使用SWT而且我经常看到这个),即使对于menuShown()方法的情况(ArrayIndexOutOfBounds如果不处理,例外将关闭应用程序).这个例子可以永远持续下去,但这里是问题摘要:

  1. 使用try-catch()过度地对性能产生负面影响吗?
  2. 使用特定的异常类型更好吗?如果我错过了可能发生的X类异常之一怎么办?
    坦率地说,我听说并且仅用了10%,我认为在2 - 3年内会出现Java标准异常.是的,有人说,如果来电者不知道如何处理抛出的异常,他就没有权利调用投掷方法.是对的吗?
  3. 我读过Anders Hejlsberg的这篇文章,说检查过的例外情况很糟糕.这是否表明在某些情况下建议进行方便的吞咽异常?
  4. 一张图片价值1000字; 我想一些例子在这里会有很多帮助.

我知道这个主题是永恒的,但实际上我期待着根据你的建议审查一个150个班级的中型项目.非常感谢.

java exception-handling exception

10
推荐指数
2
解决办法
1789
查看次数

捕获整个Java应用程序中的异常

是否有任何方法可以处理/捕获Java应用程序抛出的所有异常,而不会try{}catch(Exception e){}在各处发送代价高昂的语句?

例如,PHP具有该功能set_error_handler().

背景故事 - 尽管进行了严格的测试,但有时候错误可以通过,而且用户总是不太愿意帮助解决这些错误.理想情况下,我想将应用程序挂钩到一个Web服务工具,该工具可以跟踪用户应用程序抛出的任何堆栈跟踪.

java error-handling exception

6
推荐指数
1
解决办法
113
查看次数