основной класс веб-приложения tomcat - PullRequest
6 голосов
/ 25 декабря 2011

У меня есть клиент-серверное приложение.Сервер сделан из restful сервисов с джерси и развернут на tomcat 7. На самом деле мне нужно создать контекст сервисов (прочитать некоторые файлы большого размера) до того, как клиент получит доступ к сервисам.Можно ли создать основной класс моего веб-приложения или нет?

1 Ответ

8 голосов
/ 25 декабря 2011

Веб-приложение в JavaEE не имеет «основного класса» в том же смысле, что и настольное приложение;Конечно, выполнение должно начинаться где-то с main метода, но оно будет управляться веб-контейнером (в вашем случае Tomcat) и вне вашей досягаемости.

Вместо этого вы можете создатьсервлет, который предварительно загружает необходимые данные в контексте приложения, используя метод init (при условии, что данные будут одинаковыми для всех клиентов, и в идеале они не будут изменены ими).Кроме того, в конфигурации сервлета вы указываете, что сервлет должен быть загружен при запуске, и таким образом вы убедитесь, что данные будут загружены один раз в начале приложения, и что все клиенты смогут получить к нему доступ.из контекста приложения.

РЕДАКТИРОВАТЬ:

В более поздних версиях спецификации сервлета (2.3+) предпочтительным способом является использование прослушивателей контекста, см. ответ для деталей.

...