Ответ 1
Все, что вам нужно сделать, это написать класс Java, который реализует интерфейс ServletContextListener. Этот класс должен реализовывать два метода contextInitialized, который вызывается при первом создании веб-приложения, и contextDestroyed, который вызывается при его разрушении. Ресурс, который вы хотите инициализировать, будет создан в методе contextInitialized, а ресурс освобожден в классе contextDestroyed. Приложение должно быть настроено на вызов этого класса при его развертывании, что делается в файле дескриптора web.xml.
public class ServletContextClass implements ServletContextListener
{
public static Connection con;
public void contextInitialized(ServletContextEvent arg0)
{
con.getInstance ();
}//end contextInitialized method
public void contextDestroyed(ServletContextEvent arg0)
{
con.close ();
}//end constextDestroyed method
}
Конфигурация web.xml
<listener>
<listener-class>com.nameofpackage.ServletContextClass</listener-class>
</listener>
Теперь это позволит приложению вызывать ServletContextClass при развертывании приложения и создавать экземпляр Connection или любого другого места ресурса в методе contextInitialized, что похоже на то, что делает метод init Servlet.