2010-05-09 1 views
4

Я в настоящее время знаю Java SE, и я хочу узнать что-то более «предприятие».Что я должен научиться совершенствовать свои навыки Java?

Мне хотелось бы что-то более распределенное (сервер приложений, серверное программирование, веб-контент, система управления контентом ...), но любое предложение в порядке.

Есть много фреймворков, которые я слышал: весна, спящий режим, настойчивость, ejb, jsp, сервлет, jsf, jboss, стеклянная рыба, муравей и т. Д. И т. Д. И т. Д. И т. Д. Я очень смущен, с чего начать.

Итак, вопрос: может ли кто-нибудь объяснить мне, что на самом деле существуют рамки; и с чего я должен начать?

+1

Взгляните на http://stackoverflow.com/questions/1960280/what-to-learn-for-making-java-web-applications-in-java-ee-6/1960447#1960447 –

+1

И здесь: http://stackoverflow.com/questions/1958808/java-web-development-what-skills-do-i-need/1958854#1958854 Учебники Coreservlets.com превосходны. Я бы посоветовал ответить на этот вопрос в ответе Паскаля: пойти на Java EE 6 и оставить для этого бит сторонние рамки для того, кем они являются. – BalusC

ответ

7

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

  • Весна (это огромная структура, которая охватывает многие вещи и почти каждая компания, которую я знаю о работе на Java, использует ее каким-то образом).
  • JDBC (в основном только зная, как сделать прямые вызовы SQL, как есть, к сожалению, слишком много унаследованного кода вокруг, который не использует инструмент ORM, и это удобно, чтобы понять)
  • гибернации
  • Модульное тестирование и имитация
  • Ant/Maven

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

1

Я хотел бы проверить (в порядке убывания):

  1. сервлетов. Независимо от того, какие рамки я должен был изучить или иметь с клиентами, сервлеты всегда где-то в их системе
  2. JDBC. Подход к базам данных является ключевым для большинства фреймворков.
  3. Весна. Вы можете начать с конфигурации и IoC и продолжать собирать огромный спектр методов (например, обертка JDBC, ORM, AOP и т. Д.). SPring приведет вас к огромному количеству дополнительных инструментов и фреймворков и даст вам очень простые средства для их реализации.

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

3

Вы когда-нибудь использовали базу данных? Если бы я не начинал с этого: изучая sql, используя jdbc (например, с весной jdbc).

Затем узнайте, что такое транзакция базы данных. Это очень важная концепция (см. spring transaction management).

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

В то же время вы экспериментируете на фреймворках на заднем конце, вы можете узнать интерфейсные рамки, например, весенний mvc для серверной части и jquery или прототип для клиентской стороны (javascript).

Проверьте что-то вроде appFuse, которое даст вам скелет приложения, который вы можете улучшить.

1

Вы не можете все узнать. Начните с чего-то типа и стойки и идите оттуда.

1

Это не совсем тот ответ, о котором вы просили, но я бы нашел/создал какой-то проект, возможно, небольшой проект, чтобы любить и делать это. Вот как я узнал все навыки кодирования, которые у меня уже есть!

1

Я рекомендую вам создать небольшое корпоративное приложение. CRUD или что-то. Из моего опыта вы должны научиться:

  1. Maven - отличный инструмент для создания проектов, управления зависимостями и компиляции жизненный цикл.
  2. JPA (Hibernate, OpenJPA) - ORM, простое использование баз данных.
  3. EJB - Enterprise Java Beans (логика)
  4. Управляемые бобы (часть Java EE) - контроллеры
  5. JSF - просмотр
  6. PrimeFaces - некоторые полезные компоненты для JSF.

Знание этих технологий достаточно в начале.

Смежные вопросы