在构造函数中抛出异常是明智的吗?

lun*_*nar 2 java architecture jdbc

我正在构建DB类,在构造函数中我想与数据库建立连接,以便该类中的其余函数可以访问静态dbLink.这是一个好方法吗?

Bal*_*usC 12

至于具体的问题,在构造函数中抛出异常肯定是合法的.没有其他合理的方法可以防止"DB类"实例与断开的连接一起使用.

至于具体的功能要求,你还有另一个主要问题.您不应该在"DB类"的构造函数中创建数据库连接,并且肯定不会创建它static.这表明只要"DB类"的实例存在于Java的内存中,您就打算保持连接处于打开状态.这反过来又是一个非常糟糕的主意.应该在与try执行SQL查询/查询的块完全相同的块中创建连接.连接也应该在该finally块的try块中关闭.这样可以防止资源长期泄漏,否则会导致应用程序崩溃,因为数据库服务器因为资源已经打开太长时间而超时,或资源耗尽,因为打开了太多连接.

也可以看看:


归档时间:

查看次数:

776 次

最近记录:

13 年,5 月 前