Различие между клиентом приложения и автономным клиентом

Вашим примером не является хороший, в котором очень маловероятно, что производительность будет signficantly отличающийся. В Вашем примере удобочитаемость должна превзойти производительность, потому что увеличение производительности одного по сравнению с другим незначительно. Преимущества массива (StringBuffer) только очевидны при выполнении многих concatentations. Даже тогда Ваш пробег может очень в зависимости от Вашего браузера.

Вот подробный анализ производительности, который показывает производительность с помощью всех различных методов конкатенации JavaScript через многие различные браузеры; Строковая Производительность Анализ

join() once, concat() once, join() for, += for, concat() for

[еще 117]:
Ajaxian>> Строковая Производительность в IE: Array.join по сравнению с + = продолжался

7
задан Peter Lindqvist 11 December 2009 в 12:35
поделиться

2 ответа

The code (work you need to do) associated with connecting to the app server in either case is not really all that hard... but it is covered in different docs.

These are the instructions on how to access an EJB from a stand-alone java application.

These are the instructions for using an app client to access an EJB from a Java EE 6 Application Client with GlassFish v3: http://docs.sun.com/app/docs/doc/820-7695/beakt?l=en&a=view

Accessing an EJB from an application client gives you access to more of Java EE services 'automagically' than if you were working with the EJB 'directly'. You can cobble together access to some of these services in the stand-alone case, but the burden shifts onto the application developer/deployer to make that access work.

Creating a stand-alone application that accesses an EJB will seem easy, in the short term, and many folks will invest in that strategy. If they deploy their client application onto a large number of machines, the burden associated with a cobbled together service access strategy can become a burden.

Deploying an application client that uses the application client container is not free either. The advantage is the fact that you have the support of your app server vendor to overcome deployment issues.

If you are using GlassFish (v2.1,v2.1.1 or v3), you can also take advantage of Java Web Start support, which simplifies client application deployment a lot.

4
ответ дан 7 December 2019 в 05:24
поделиться

Клиент приложения фактически запускается в контейнере и имеет полный доступ к ресурсам Java EE, определенным на вашем сервере, точно так же, как это делают сервлет или EJB. Обычно это используется для некоторых типов административных клиентов, а не для пользовательских приложений. Вот одно объяснение .

В дополнение к клиенту приложения Java EE существует также концепция тонкого клиента , который также позволяет получить доступ к некоторым ресурсам Java EE, но не так просто, как клиент приложения. Обычно это связано с использованием поиска JNDI с абсолютными именами, поскольку ссылки JNDI недоступны. Типичным случаем для этого может быть автономный производитель / потребитель сообщений JMS. По сути, это более легкий вариант полного клиента приложений.

Если вы просто создаете пользовательское приложение, вы, скорее всего, захотите использовать модель тонкого клиента или простое старое приложение, которое просто потребляет службы из вашего приложения Java EE через сервлет или вызовы веб-службы.

4
ответ дан 7 December 2019 в 05:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: