Что учиться для того, чтобы сделать веб-приложения Java в Java EE 6? [закрытый]

103
задан creativz 20 March 2013 в 20:44
поделиться

4 ответа

Даже если я знаю, что это будет противоречиво, мой совет - начинать только с Java EE 6. Итак, захватите GlassFish v3 и либо получите книгу Beginning Java EE 6 Platform with GlassFish 3: From Novice to Professional, либо следуйте инструкциям Java EE 6 tutorial. На мой взгляд, книга (которую я начал читать, чтобы понять, о чем я говорю) содержит больше рекомендаций, которые могут быть предпочтительнее, если "все" для вас новое (она охватывает как платформу Java EE, так и ее API и среду для сборки, развертывания ваших приложений).

Теперь, как я уже сказал, я уже слышу голоса, говорящие типа " Java EE тяжелая, используйте вместо нее Spring, изучайте Struts или Wicket или Stripes для уровня презентации, изучайте Hibernate для настойчивости, или нет, потому что мне не нравится ORM, используйте iBatis или прямой JDBC вместо этого (вы увидите, это круто с Весной, Весна так круто), и используйте Tomcat (и почему бы и нет Jetty), или JBoss, или просто забудьте обо всём этом и идите за Граалями, и бла бла бла. ..".

Но я не думаю, что это действительно поможет вам, и без наставничества или руководства (и вы не найдете устаревшего уникального ресурса, охватывающего все комбинации), это должно звучать очень запутанно для новичка.

Итак, поскольку я думаю, что Java EE 6 является большим улучшением по сравнению с предыдущими версиями Java EE, потому что она предоставляет действительно приятные стандартные API для всех ваших нужд (Servlet 3.0, JSF 2.0, JPA 2.0, EJB 3.1 lite, Bean Validation 1. 0, CDI и т.д.), потому что все эти API более чем приличны, потому что нет ничего плохого в их изучении, потому что это уже большая задача, , потому что нужно начинать с чего-то , я бы сосредоточился только на Java EE 6 и пока забыл про другие фреймворки. Точнее, я бы начал с веб-профиля Java EE 6 (а затем добавил бы вещи, если вы хотите пойти дальше).

Сделав это, 1) вы начнете, и вы узнаете совершенно новые вещи и 2) вы дадите некоторое время всем другим фреймворкам и/или инструментам, чтобы адаптировать и доказать, что они все еще нужны. А если есть, то все равно настанет время поэкспериментировать с выжившими, и вы сможете гораздо лучше понять, почему они существуют.

172
ответ дан 24 November 2019 в 04:18
поделиться

Java EE 6 действительно потрясающая. Единственная проблема в том, что она около 2 недель, и в настоящее время существует только 1 контейнер, предлагающий свои возможности - Glassfish.

Я ничего не имею против Glassfish, я использую его повсюду, несколько экземпляров производства, я люблю продукт и проект.

Тем не менее, детали Java EE 6 не переводятся обратно на Java EE 5. Некоторые делают, многие делают, но веб-профиль, сервлет 3.0, новые типы бобов, JPA 2, и т.д. Их нет.

Итак, изучая сначала Java EE 6, вы просто ограничиваете себя одним контейнером. Скоро будет еще больше, но их еще нет.

Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo и т.д. все хорошо работают с Java EE 5 spec (по крайней мере те части spec, которые они поддерживают, Tomcat не имеет EJB, например).

Я не могу вспомнить ничего из Java EE 5, что не было перенесено на Java EE 6. Java EE 6 сделала некоторые очень старые аспекты необязательными, и те, которые вы просто не узнаете сегодня, в любом случае. Java EE 6 сделала некоторые вещи на Java EE 5 еще проще (например, упаковка EJB Lite).

Изучайте Java EE 5 сейчас, чтобы вы могли реально применять то, что вы изучаете в различных средах, вместо того, чтобы изучать Java EE 6 сейчас и обнаруживать, что вы, возможно, не сможете использовать большую часть того, что вы изучаете.

Ни одна книга не научит вас тому, что вам нужно знать. Сервлеты, например, являются хорошей основой, но для всего, что больше пары страниц или конечной точки, вы захотите использовать один из многих сторонних фреймворков, или JSF, и ни одна книга не покрывает ядро, а затем и фреймворк поверх него.

Учебник Java EE 5 хорош в том, чтобы сбить фундамент, моя основная жалоба в том, что они не показывают вам исходный код. Скорее они ожидают, что вы просто загрузите и запустите его. Это не обсуждается в учебнике. Я считаю, что книги Head First очень хороши.

Для веб-программирования сырые сервлеты достаточно важны, чтобы понять цикл запросов/ответов, но вам не нужно глубокое понимание, чтобы сделать скачок к стороннему фреймворку.

Я большой поклонник книг Stripes для фреймворка Action (по сравнению с компонентным), и доступная книга Stripes отлично подходит (что делает выбор простым).

Я не могу предложить книгу по компонентному фреймворку, и на самом деле я бы не стал рекомендовать ее сразу же. Фреймворки компонентов действительно хоронят структуры запросов/ответов ядра HTTP. Они хоронят их не просто так, и они приобретают ценность, хороня их, но я считаю, что для того, чтобы быть эффективным, вам нужно иметь хорошее понимание этих концепций на ранней стадии. Поэтому я не советую сначала изучать фреймворк компонентов.

Фреймворк JAX-RS REST, включенный в Java EE 6, но легко устанавливаемый в Java EE 5 или любой другой контейнер сервлетов, превосходен. Возможно, это то, чем должен был быть Сервлет 3.0. Но я не знаю ни одной книги для этого.

9
ответ дан 24 November 2019 в 04:18
поделиться

Мой совет 1 - перестать читать книги и начать реализовывать. По моему опыту, изучение книг - это плохая замена знаний, которые вы получаете, делая вещи на самом деле.


1 - Контекст: это совет тому, кто только что закончил читать две книги по этой теме, и ищет больше книг, чтобы их прочитать. На практике необходимо соблюдать баланс между чтением и выполнением. Особенно, если у вас есть конкретная проблема, которую вы пытаетесь решить.

28
ответ дан 24 November 2019 в 04:18
поделиться

Для Tomcat ознакомьтесь с руководством на веб-сайте. Это очень хорошо. В частности, первые несколько глав об организации и развертывании веб-приложений, а также главы о сервлетах API и JSP.

Для Spring книга Manning Spring in Action очень хороша. Аналогично для Hibernate (книга Manning), но я думаю, что Hibernate в основном выходит за рамки веб-приложений. Ваш звонок, однако.

Wicket - Книга Мэннинга тоже. Но на самом деле, просто напишите свой фронт-код на Javascript. Это будет менее болезненно, IMO.

5
ответ дан 24 November 2019 в 04:18
поделиться
Другие вопросы по тегам:

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