Шпаргалка по аннотациям для разработчиков Java, использующих фреймворк Spring

Java задняя часть Spring
Шпаргалка по аннотациям для разработчиков Java, использующих фреймворк Spring

Это 6-й день моего участия в августовском испытании обновлений.Подробности о мероприятии:Испытание августовского обновления

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

Важные весенние аннотации

Вот наиболее важные аннотации, которые должен знать любой Java-разработчик, использующий Spring:

  • @Configuration- Используется для обозначения класса как источника определений bean-компонентов. Bean-компоненты — это системные компоненты, которые вы хотите связать вместе. Методы, отмеченные аннотацией @Bean, являются производителями компонентов. Spring будет обрабатывать жизненный цикл bean-компонента для вас и будет использовать эти методы для создания bean-компонента.
  • @ComponentScan— Используется для того, чтобы Spring знал о вашем классе конфигурации и мог правильно инициализировать bean-компоненты. Он делает пакеты сканирования Spring настроенными для классов @Configuration.
  • @Import -Если вам нужен более точный контроль над классом конфигурации, вы всегда можете использовать @import для загрузки дополнительной конфигурации. Этот метод работает, даже если вы укажете bean-компонент в XML-файле, как в 1999 году.
  • @Component- Еще один способ объявить bean-компонент — пометить класс аннотацией @Component. Это приведет к преобразованию класса в bean-компонент Spring при автоматическом сканировании.
  • **@Service -** отмечает специализацию @Component. Он сообщает Spring, что безопасно управлять ими более свободно, чем обычными компонентами. Помните, что службы не имеют инкапсулированного состояния.
  • @Autowired -Чтобы связать части приложения вместе, используйте @Autowired для полей, конструкторов или методов в компонентах. Механизм внедрения зависимостей Spring подключает соответствующие bean-компоненты к членам класса, помеченным @Autowired.
  • @Bean -Аннотация уровня метода, указывающая возвращаемый компонент, управляемый контекстом Spring. Возвращенный bean-компонент имеет то же имя, что и фабричный метод.
  • @Lookup -Скажите Spring, чтобы он возвращал экземпляр возвращаемого типа метода, когда мы его вызываем.
  • @Primary -Когда имеется несколько бобов одного типа, предпочтение отдается одному бобу.
  • @Required -Указывает, что метод установки должен быть настроен на использование значения для внедрения зависимостей во время настройки. Используйте @Required в методах установки, чтобы пометить зависимости, заполняемые через XML. В противном случае создается исключение BeanInitializationException.
  • @Value -Используется для присвоения значений полям в bean-компонентах, управляемых Spring. Он совместим с конструктором, сеттером и внедрением полей.
  • @Lazy -Сделайте bean-компонент лениво-инициализированным. Аннотацию @Lazy можно использовать в любом классе, прямо или косвенно аннотированном с помощью @Component или метода, аннотированного с помощью @Bean.
  • @Scope -Используется для определения области определения класса @Component или @Bean, которая может быть одноэлементной, прототипом, запросом, сеансом, глобальным сеансом или настраиваемой областью.
  • @Profile -Компоненты добавляются в приложение только в том случае, если профиль активен.

С помощью этих аннотаций вы можете легко объединить свои приложения. Конечно, вы можете захотеть использовать больше аннотаций Spring, но это ядро ​​фреймворка, обеспечивающее гибкость, которой славится Spring!

Важные аннотации Spring Boot

Давайте рассмотрим некоторые из наиболее часто используемых аннотаций в веб-приложениях. Имеет смысл популяризировать аннотации Spring Framework, упрощающие веб-разработку.

@SpringBootApplication

Одной из самых основных и полезных аннотаций является@SpringBootApplication. Это синтаксический сахар для объединения других аннотаций, о которых мы поговорим позже. @SpringBootApplication — это@Configuration,@EnableAutoConfigurationа также@ComponentScanКомбинация аннотаций с настроенными свойствами по умолчанию.

@Конфигурация и @ComponentScan

Аннотации @Configuration и @ComponentScan, которые мы описали выше, позволяют Spring создавать и настраивать bean-компоненты и компоненты приложения. Это отличный способ связать реальный код бизнес-логики с приложением.

@EnableAutoConfiguration

Сейчас@EnableAutoConfigurationАннотации лучше. Это позволяет Spring угадать конфигурацию на основе файлов JAR, доступных в пути к классам. Он узнает, какие библиотеки вы используете, и предварительно настраивает их компоненты без вашего участия. Так работают все библиотеки spring-boot-starter. Это означает, что это большое спасение, когда вы только начинаете работать с библиотекой, и когда вы знаете и считаете, что конфигурация по умолчанию является разумной.

Важные веб-аннотации Spring MVC

Следующие аннотации заставляют Spring настроить ваше приложение как веб-приложение, способное обслуживать ответы HTTP.

  • @Controller -Отметьте класс как веб-контроллер, способный обрабатывать HTTP-запросы. Spring просматривает методы классов, помеченных аннотацией @Controller, и строит таблицу маршрутизации, чтобы знать, какие методы обслуживают какие конечные точки.
  • @ResponseBody -@ResponseBody — это служебная аннотация, которая заставляет Spring привязывать возвращаемое значение метода к телу ответа HTTP. При создании конечных точек JSON это волшебный способ волшебным образом преобразовать ваши объекты в JSON для простоты использования.
  • @RestController -Затем идет аннотация @RestController, которая представляет собой удобный синтаксис для использования @Controller с @ResponseBody. Это означает, что все методы действий в классе маркеров будут возвращать ответы JSON.
  • @RequestMapping(method = RequestMethod.GET, value = "/path") -Аннотация @RequestMapping(method = RequestMethod.GET, value = "/path") указывает метод в контроллере, который должен отвечать за обслуживание HTTP-запросов по заданному пути. Spring будет обрабатывать детали реализации того, как это делается. Вы просто указываете значение пути в аннотации, и Spring направит запрос на правильный метод действия.
  • @RequestParam(value="name", defaultValue="World") -Конечно, методу, обрабатывающему запрос, могут потребоваться параметры. Чтобы упростить привязку параметров HTTP к параметрам метода действия, вы можете использовать аннотацию @RequestParam(value="name", defaultValue="World"). Spring проанализирует параметры запроса и поместит соответствующие параметры в параметры вашего метода.
  • @PathVariable("placeholderName") -Другой распространенный способ предоставить информацию серверной части — закодировать ее в URL-адресе. Затем вы можете использовать аннотацию @PathVariable("placeholderName"), чтобы перенести значение из URL-адреса в параметр метода.

Последнее, что нужно сказать

В этой статье мы узнали о многих аннотациях, которые следует знать разработчикам Java при использовании среды Spring. Мы рассмотрели самые распространенные и, возможно, самые важные аннотации — от аннотаций, которые позволяют внедрять зависимости для компонентов, до методов связывания кода для ответа на HTTP-запросы.

Я давно веду блог о технологиях, и это одна из моих технических статей/руководств. Надеюсь, вам это понравится! Вот краткое изложение всех моих оригинальных и исходных кодов работ:GitHub, и это блог, который я недавно создал:haiyong.site,контента в ней не так много,есть какие-то HTML игры,если интересно можете попробовать.Вы можете сами скопировать исходники по F12,или спросите у меня напрямую.

Если вы действительно узнали что-то новое из этой статьи, ставьте лайк, добавляйте в закладки и делитесь с друзьями. 🤗Наконец, не забудьте поставить ❤ или 📑 в поддержку.