Java Tomcat Servlet - Initialiser la Classe de Démarrage de l'Application

J'ai une classe qui prend un peu de temps à démarrer (en fait JNI appels et ce n'est pas), de sorte qu'il n'est pas réalisable pour initialiser cette classe à chaque fois qu'une page se charge. Est-il possible d'initialiser cette classe de démarrage de l'application, puis d'accéder à ses méthodes que les pages sont servies?

Par Exemple:

J'ai MyClass. Lorsque l'application (tomcat) démarre, j'aimerais qu'il initialze mon calss comme suit:

MyClass myClassInstance = new MyClass("arg1", "arg2");

Puis, quand une page est appelée, dire /testpage, je voudrais faire des appels à myClassInstance:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import MyClass;

public class TestPage extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
    {
        String myResult = myClassInstance.getResult("whatever");

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Test</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1>" +myResult +"</h1>");
        out.println("</body>");
        out.println("</html>");
    }
}

Est-ce possible?

OriginalL'auteur Petey B | 2011-06-01