如何在Servlet中使用“应用程序”对象?

时间:2009-04-19 15:37:06

标签: java jsp servlets

如果我们编写JSP文件,我们只需要使用嵌入的“应用程序”对象。但是如何在Servlet中使用它?

4 个答案:

答案 0 :(得分:6)

JSP中的application对象在servlet中称为ServletContext对象。这可以通过继承的GenericServlet#getServletContext()方法获得。除了init(ServletConfig)方法之外,您可以在servlet中的任何位置调用它。

public class YourServlet extends HttpServlet {

    @Override
    public void init() throws ServletException { 
         ServletContext ctx = getServletContext(); 
         // ...
    } 

    @Override
    public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 
         ServletContext ctx = getServletContext(); 
         // ...
    } 

    @Override
    public void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { 
         ServletContext ctx = getServletContext(); 
         // ...
    } 

}

另见Different ways to get Servlet Context

答案 1 :(得分:4)

application对象引用javax.servlet.ServletContext,您应该可以在servlet中引用它。

要引用ServletContext,您需要执行以下操作:

// Get the ServletContext
ServletConfig config = getServletConfig();
ServletContext sc = config.getServletContext();

从那时起,您将使用sc对象,就像在JSP中使用应用程序对象一样。

答案 2 :(得分:3)

试试这个:

ServletContext application = getServletConfig().getServletContext();

答案 3 :(得分:0)

在Java Web应用程序中,您经常拥有request对象。所以你可以得到这样的"application"对象:

request.getServletContext().getServerInfo()