Достаточно ли простой установки JDK на веб-сервере для запуска веб-приложения Java?
-
14-11-2019 - |
Вопрос
У меня есть код Java, который работает на моем рабочем столе... это простое приложение, которое извлекает данные из базы данных, что-то с ними делает и выводит список.
Это сайт, ориентированный на потребителя, и в конечном итоге я хочу передать список в PHP, чтобы использовать его для создания страницы.
Я понимаю, что могу сделать это с бережливостью, и это текущий план.
Но вопрос в том, нужен ли мне какой-то специальный сервер, помимо JDK, для запуска Java-конца, учитывая тот факт, что он используется исключительно для обработки данных?Почему или почему нет?
Как JRE/JDK обрабатывает разных пользователей, пытающихся одновременно получить доступ к пользовательским данным, учитывая, что php должен получать эту информацию из одного и того же Java-приложения?как Java-программа узнает разницу?
Большое спасибо за вашу помощь!
Решение
Вам нужен сервер J2EE, который в зависимости от сложности вашего приложения может представлять собой механизм JSP/сервлетов, например Апач Томкэт или полноценный сервер приложений J2EE, например Стеклянная рыба, jBoss или даже коммерческий продукт, такой как Пакет промежуточного программного обеспечения Oracle Fusion, который также включает в себя такие функции, как управление пользователями, сервер LDAP, Sigle-Sign-on, инструменты управления фермой серверов и т. д.
На этом сервере вы обычно запускаете J2EE/Web-приложение, развернутое как WAR/EAR, см. Руководство
РЕДАКТИРОВАТЬ:Описание базового веб-приложения браузера/HTTP/HTML:Сервер J2EE предоставляет конечную точку HTTP, которую можно вызвать из браузера через HTTP-запрос, например. http://localhost:80870/myApp/helloWorld?param=1
.HTTP-запрос отправляется конкретному сервлету (классу Java, реализующему его). Servlet
интерфейс), в зависимости от конфигурации сервера и развертывания веб-приложения.Сервлет doService
метод вызывается сервером J2EE, тогда код сервлета может читать любые параметры запроса и т. д. из ServletRequest
объект передается в метод и может сконструировать ответ (например.HTML-страницу), записывая ее в выходной поток ServletResponse
объект передается в метод.Затем ответ отправляется обратно в браузер пользователя.
Контейнер J2EE также предоставляет функциональность сеанса, поэтому последующие запросы из одного и того же сеанса браузера могут использовать совместное состояние.
Это только основная концепция - для получения подробной информации о том, как работает весь этот материал j2ee, вам следует потратить не менее 8 часов на прохождение самых первых шагов учебного пособия по J2EE и получить JSP/сервлет HelloWorld, работающий на вашем собственном сервере.Если во время этого возникнут какие-либо подробные вопросы, задайте их на stackoverflow.