Java – это запутанный мир.
Как новичок в Java, возникали ли у вас когда-нибудь эти вопросы?
- Что такое J2SE?
- Хорошо, я понимаю J2SE но что такое J2EE?
- Что такое JSF сейчас?
- Что такое JNDI и что такое JNI?
- Что такое EJBs сейчас?
- Что такое JMS?
- Что такое JSR?
- Что такое JPA?
- и более…
Если эти вопросы иногда сбивают вас с толку (ну, со мной это определенно так и было), вы находитесь в нужном месте. Сегодня я собираюсь упростить для вас путь обучения Spring. Это прояснит, как Java развивалась с течением времени и как Spring стала стандартом де-факто в промышленности. Это также прояснит, чему вы должны научиться в мире Java, конечно, вы не можете выучить все это. JAVA ОГРОМНА.
Я буду проходить через указатели, чтобы легко объяснить это:
J2SE
- Ядро Java + API Параллелизма + Стандартная версия коллекции (J2SE)
J2EE
Затем появляется Java Enterprise Edition (J2EE), которая обладает набором корпоративных функций, используемых для разработки полноценных корпоративных java-приложений.
Сервлет, JSP, JSF, EJB, JMS, JNDI, JDBC, JavaMail, JTS, JTA, JCA – все это корпоративные функции и подпадает под J2EE.
J2EE – это всего лишь некоторые абстрактные и стандартизированные спецификации (API), и их реализация обеспечивается соответствующим сервером приложений. Примерами серверов приложений являются Glassfish, JBoss, Liberty, WebSphere и др.
Эти абстрактные спецификации определяются с помощью JSR (Запрос спецификации Java) и реализуются с помощью эталонной реализации, например. JPA – это JAR, а Hibernate – это эталонная реализация, т.е. JPA определяет все аннотации и сигнатуры методов, а эталонная реализация реализует для нее базовый код. Подумайте об интерфейсе и классе.
Веб-сервер против Сервера приложений против веб-контейнера
- Веб-серверы просто обслуживают статический контент, серверы приложений предоставляют динамический контент с другими функциями, такими как управление пулом EJB, облегчение распределенных транзакций, облегчение поиска приложений через JNDI, безопасность приложений и другие. Веб-контейнеры – это просто контейнеры сервлетов, которые отвечают только за генерацию HTML путем выполнения JSP и сервлета на стороне сервера.
Весна уже здесь
Spring – это еще одна альтернатива J2EE для создания корпоративных приложений на Java.
Spring – это фреймворк, выполняющий множество функций по спецификациям J2EE, но в своей собственной форме. Для этого они не следуют спецификациям и API-интерфейсам J2EE. Но они включают в себя веб-фреймворк, управление транзакциями, безопасность и несколько других решений, которые предлагает J2EE.
Весенний Учебный План
Итак, начните с Spring Core, который имеет отношение к CDI в J2EE. Это научит вас внедрению зависимостей и инверсии управления.
Затем переходите к Spring-Web/MVC, который эквивалентен Servlet/Jsp в J2EE, но с большим количеством функций и поддержки.
Затем переходите к нескольким модулям Spring, которые обеспечивают различные функциональные возможности J2EE.
Важные Пружинные Модули:
Spring-AOP: Обеспечивает сквозные проблемы Spring-JDBC: Предоставляет JdbcTemplate, который удаляет шаблонный код из JDBC Spring-ORM: Предоставляет HibernateTemplate, который делает то же самое в мире ORM Spring-JMS: Обеспечивает обмен сообщениями.
- После того, как вы закончите с этим и узнаете, как работает spring, пришло время начать изучать Spring boot, Spring boot – это самоуверенный фреймворк, который выполняет большую часть настройки за вас.
Вот и все, это чрезмерное упрощение пути обучения Spring. Если вы любознательный ученик Springlearner, у меня есть новая серия обучающих программ для изучения spring с нуля. Следуйте, чтобы узнать больше. Прокомментируйте, если у вас есть какие-либо сомнения.
Оригинал: “https://dev.to/livesamarthgupta/spring-learning-plan-8p9”