gpt4 book ai didi

java - Context 和 InitialContext - 我应该在这些对象上调用 close() 方法吗?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:14:36 24 4
gpt4 key购买 nike

如果我早点查看有关 Context 和 InitialContext 的 Java SE6 文档,我会发现每个都有一个 close() 方法。

所以现在我想知道,我是否需要在 Context/InitialContext 对象上调用 close() 方法?

这是我的典型 servlet 代码片段以及如何使用 Context/InitialContext 对象。

public class MyTypicalServlet extends HttpServlet {     

//thread safe
DataSource ds;
String FilePath;

public void init(ServletConfig config) throws ServletException {

super.init(config);
try {
final Context ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/myDB");

FilePath = getServletContext().getInitParameter("FilePath");

} catch (NamingException e) {
throw new ServletException("Unable to find datasource: " + e.getMessage(), e);
}
}

public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{
doPost(req,res);
}

public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException
{

//...a bunch of code
}

}//class

最佳答案

养成好习惯。例如,我总是确保关闭我的 InputStream 类,即使我使用的是 ByteArrayInputStream,其中 close() 方法是空操作。这样一来,如果我稍后将其更改为其他实现,那么也无需更改。

此处情况相同 - 如果您调用 close(),您将与任何 JNDI 实现更加兼容。

关于java - Context 和 InitialContext - 我应该在这些对象上调用 close() 方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5120961/

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