Я занимаюсь программированием "старых простых Java-объектов" уже 10 лет, используя Swing и JDBC, и считаю, что у меня это неплохо получается. Но через две недели я начинаю новую работу, где они используют JBoss, и я хотел бы получить предупреждение и начать изучать все эти вещи, прежде чем я начну. Какие есть хорошие ресурсы? Он-лайн учебники, книги, электронные книги, все, что вы можете предложить, особенно те, которые не пытаются сначала научить вас основам простой Java.




На ум приходит пара ответов:
Если вы привыкли к "старой доброй java", то вам, вероятно, понадобится больше опыта в использовании старой простой j2EE, чем специфических для JBOSS вещей. Я бы начал с уроки солнца, но знание общей структуры сервлетов, api сервлета, является базовым.
Что касается серверов приложений, JBoss (только мое предвзятое мнение) безумно большой и сложный. Подумайте о запуске космического корабля, и вы не за горами. Миллион услуг. Он особенно отмечен необычной структурой загрузчика классов (хотя она, возможно, изменилась с тех пор, как я использовал ее в последний раз, около 1-2 лет назад), среди прочего. Он также имеет обширный список хороших сервисов, таких как база JMX (компоненты конфигурации управления), хотя документация, вероятно, будет неоднородной, поскольку поддержка является платной услугой.
Лучшее предложение - ознакомьтесь с библиотеками J2EE. Следующим шагом будет запуск базового сайта в JBOSS. Более конкретные вещи, которые вы, возможно, захотите сделать, вероятно, будут очень специфичными для их установки (например, там есть реализация JMS, но они могут ее не использовать), поскольку я видел, как люди использовали ее только для контейнера сервлетов.
Я бы посоветовал почитать книгу вроде Jboss на работе http://oreilly.com/catalog/9780596007348/
Мы тоже используем jboss на работе .. и я прочитал эту книгу и нашел ее полезной ..
Изучите Enterprise Java Beans
Похоже на меня (хотя определенно не с 10летним опытом). Я начал с первой серии Head для servlet / jsps. Я уже знал, для чего они предназначены. Если вы хорошо разбираетесь в шаблонах проектирования и OOPS, Ejbs и других ресурсах было бы проще простого, сосредоточьтесь на том, почему они такие, как и что делать, может подождать. Серверы приложений - это совсем другое дело, однако изучение руководств администратора помогло прояснить довольно много вещей. SSL / Хранилища сертификатов / Кластеризация могут быть в конце списка. Вы также хотели бы узнать об инструментах ORM, таких как Hibernet; альтернативные технологии просмотра, такие как Wicket, Tapestry и т. д .; Контейнеры, такие как Spring, и библиотеки, такие как struts, можно изучать медленно. Лучшие практики и обзоры, опубликованные в Интернете, определенно помогают.
Выбор того, в каком порядке следовать, не должен быть таким сложным, поскольку рабочее место в большинстве случаев диктует технологии. Просто помните, J2EE - это набор спецификаций, а фреймворки по существу поддерживают библиотеки, предназначенные для определенной группы. Ключ в руках дизайнера / разработчика.
Чтобы быстро освоиться, вам действительно нужно овладеть EJB и JSP / сервлетами. Это основы технологии Java EE. Серия Head First по EJB и JSP / сервлетам - хорошее начало для того, что обычно было невероятно сложной структурой. Помните, что недавние выпуски Head First переключились на обучение более простым фреймворкам Java EE 1.5 на основе аннотаций. Хотя новая версия Java EE проще и лучше, вам, вероятно, нужно знать предыдущие версии (Java EE 1.4 = EJB 2.1 и Servlets 2.4).
На данный момент вы только окунули ногу в воду. В следующем году я бы потратил много времени на изучение технологий Java EE и разработки корпоративных приложений для клиент-серверов в целом.
а) Вы обязательно должны понимать моделирование данных и базы данных. Лучшее, что я видел, - это Крис Дейт, Стив Фейерштейн (если вы используете Oracle) и Джо Селко. Лучшие разработчики Java EE могут не отставать от своих администраторов баз данных в технических обсуждениях базы данных.
б) Вам нужно понимать, как работает JDBC и почему появились инструменты ORM, такие как iBatis, Hibernate и Toplink. Предполагая, что вы знаете, как написать JDBC DAO, убедитесь, что понимаете, как работает Hibernate.
в) Вы должны понимать, как устроена многоуровневая архитектура приложения Java EE. Основные шаблоны проектирования Java EE предписывает типичную практику, и весьма вероятно, что ваш будущий проект будет придерживаться этих шаблонов. Тем не менее, вы также должны понимать альтернативные точки зрения на архитектуру. Я считаю, что Паттерны архитектуры корпоративных приложений Мартина Фаулера и Индивидуальное проектирование и разработка Java EE для экспертов Рода Джонсона очень ценны. Идеи в последнем стали основой Spring и стали мейнстримом из-за того, сколько разработчиков J2EE предпочитают разрабатывать свои приложения.
г) Затем изучите некоторые из фреймворков, которые возникли в экосистеме Java EEE. Хотя это философский вопрос, почему существует так много фреймворков и какая из них лучше, сосредоточения внимания на фреймворках, которые конкретно использует ваш работодатель, более чем достаточно.