Моя цель - создавать веб-приложения!
Я закончил читать книги «В первую очередь - Java» и «В первую очередь - сервлеты и JSP».
Поскольку эта тема (веб-приложения) настолько велика и сложна, я хотел бы спросить, что мне следует изучить дальше. Я чувствую себя переутомленным, когда читаю такие ключевые слова, как Java EE, EJB, JSF, JPA, Glassfish ... но я не сдамся.
Кто-нибудь может сказать мне, как мне продолжить обучение? Стоит ли мне взять такую книгу: « Начало платформы Java EE 6 с GlassFish 3: от новичка к профессионалам» или просто сделать несколько онлайн-руководств?
Спасибо!
java
jakarta-ee
web-applications
Creativz
источник
источник
Ответы:
Даже если я знаю , что это будет спорным, мой совет будет начать только с Java EE 6. Итак, возьмите GlassFish v3 и либо получите книгу « Начало платформы Java EE 6 с GlassFish 3: от новичка к профессионалу», либо следуйте руководству по Java EE 6 . На мой взгляд, книга (которую я начал читать, поэтому я знаю, о чем говорю) предоставляет дополнительные рекомендации, которые могут быть предпочтительнее, если «все» для вас ново (она охватывает как платформу Java EE, так и ее API-интерфейсы). и среда для создания, развертывания ваших приложений).
Теперь, как я уже сказал, я уже слышу голоса, говорящие что-то вроде «Java EE тяжелый, используйте вместо этого Spring, изучите Struts, Wicket или Stripes для уровня представления, изучите Hibernate для сохранения или нет, потому что мне не нравится ORM, используйте вместо этого iBatis или прямой JDBC (вы увидите, это круто со Spring, Spring так круто) и используйте Tomcat (и почему не Jetty) или JBoss, или просто забудьте все это и перейдите к Grails, и бла-бла-бла ... " .
Но я не думаю, что это действительно помогает вам, и без наставничества или руководства (и вы не найдете не устаревшего уникального ресурса, охватывающего все комбинации) это должно показаться очень запутанным для новичка.
Итак, поскольку я считаю, что 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) вы дадите время всем другим фреймворкам и / или инструментам, чтобы адаптироваться и доказать, что они все еще нужны. И если да, то все равно будет время поэкспериментировать с выжившими, и вы сможете гораздо лучше понять, почему они существуют.
источник
Мой совет №1 - перестать читать книги и начать что-то реализовывать. По моему опыту, книжное обучение - плохая замена тем знаниям, которые вы получаете, фактически делая что-то.
1 - Контекст: это совет тому, кто только что закончил читать две книги по этой теме и ищет другие книги для чтения. На практике вам нужно балансировать между чтением и делом. Особенно, если у вас есть конкретная проблема, которую вы пытаетесь решить.
источник
reading
иpractice
.Java EE 6 действительно потрясающий. Единственная проблема заключается в том, что ему около двух недель, и в настоящее время есть только 1 контейнер, предлагающий его функции - Glassfish.
Я ничего не имею против Glassfish, я использую его повсюду, несколько производственных экземпляров, мне нравится продукт и проект.
Тем не менее, детали Java EE 6 не переводятся обратно в Java EE 5. Некоторые делают, многие делают, но Web Profile, Servlet 3.0, новые типы Bean, JPA 2 и т. Д. Их там нет.
Итак, сначала изучая Java EE 6, вы просто ограничиваете себя одним контейнером. Приходят другие, но их еще нет.
Tomcat, JBoss, OpenEJB, Glassfish, Jetty, Resin, Geronimo и т. Д. Хорошо работают со спецификацией Java EE 5 (по крайней мере, те части спецификации, которые они поддерживают, 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 (по сравнению с компонентным фреймворком), и доступная книга single Stripes превосходна (что делает выбор легким).
Я не могу предложить книгу по фреймворкам компонентов, да и не стал бы рекомендовать ее сразу. Компонентные структуры действительно скрывают структуры запроса / ответа ядра HTTP. Они хоронят их по какой-то причине, и они получают ценность, закапывая их, но я считаю, что для того, чтобы быть эффективными, вам нужно иметь твердое понимание этих концепций на раннем этапе. Вот почему я не предлагаю сначала изучить структуру компонентов.
Платформа JAX-RS REST, включенная в Java EE 6, но легко устанавливаемая в Java EE 5 или любой контейнер сервлетов, превосходна. Возможно, это то, чем должен был быть Servlet 3.0. Но я не знаю книг по этому поводу.
источник
Для Tomcat прочтите руководство на веб-сайте. Это очень хорошо. В частности, первые несколько глав об организации и развертывании веб-приложений, а также главы об API сервлетов и JSP.
Для весны очень хороша книга Мэннинга «Весна в действии». Аналогично Hibernate (книга Мэннинга), но я думаю, что Hibernate в основном выходит за рамки веб-приложений. Но твой звонок.
Уикет - также книга Мэннинга. Но на самом деле просто напишите свой интерфейсный код на Javascript. Это будет менее болезненно, ИМО.
источник
Я не буду комментировать другие технологии, но если вы хотите изучить Hibernate, возьмите «Hibernate Made Easy» Кэмерона Маккензи (www.hiberbook.com). Это стоит каждого пенни. Вы можете прочитать эту книгу за 2 дня (буквально). это похоже на роман, и в конце вы обнаруживаете, что имеете дело с Hibernate как с полупрофессионалом.
источник
Jpassion предоставляет хорошие видео и материалы для изучения Java EE 6 и прочего.
Вы также должны увидеть примеры приложений:
источник
Если вы просто хотите создавать веб-приложения на Java, обратите внимание на Play Framework . Это похоже на Ruby on Rails.
источник