Spring Boot Annotations는 프로그램에 대한 데이터를 제공하는 메타데이터 형식입니다. 즉, 주석은 다음을 제공하는 데 사용됩니다. 보충 프로그램에 대한 정보입니다. 이는 우리가 개발하는 애플리케이션의 일부가 아닙니다. 주석을 추가한 코드의 작동에 직접적인 영향을 미치지 않습니다. 컴파일된 프로그램의 동작은 변경되지 않습니다.
이 섹션에서는 몇 가지 중요한 사항에 대해 논의하겠습니다. 스프링 부트 주석 이 튜토리얼의 뒷부분에서 사용할 것입니다.
자바 정규식 $
핵심 Spring Framework 주석
@필수의: 이는 다음에 적용됩니다. 콩 세터 방식. 이는 구성 시 필수 속성으로 주석이 달린 Bean을 채워야 함을 나타내며, 그렇지 않으면 예외가 발생합니다. BeanInitializationException .
예
public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } }
@Autowired: Spring은 @Autowired 주석을 제공하여 주석 기반 자동 연결을 제공합니다. 이는 setter 메서드, 인스턴스 변수 및 생성자에서 Spring Bean을 자동 연결하는 데 사용됩니다. @Autowired 주석을 사용하면 스프링 컨테이너는 데이터 유형을 일치시켜 Bean을 자동 연결합니다.
예
@Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } }
@구성: 클래스 수준 주석입니다. Spring 컨테이너가 Bean 정의의 소스로 사용하는 @Configuration 주석이 달린 클래스입니다.
예
@Configuration public class Vehicle { @BeanVehicle engine() { return new Vehicle(); } }
@ComponentScan: 패키지에서 빈을 스캔하려고 할 때 사용됩니다. @Configuration 주석과 함께 사용됩니다. Spring 컴포넌트를 검색할 기본 패키지를 지정할 수도 있습니다.
예
@ComponentScan(basePackages = 'com.javatpoint') @Configuration public class ScanComponent { // ... }
@콩: 메소드 수준 주석입니다. 이는 XML 태그의 대안입니다. Spring Container가 관리할 Bean을 생성하는 방법을 알려준다.
예
@Bean public BeanExample beanExample() { return new BeanExample (); }
Spring Framework 스테레오타입 주석
@요소: 클래스 수준 주석입니다. Java 클래스를 Bean으로 표시하는 데 사용됩니다. 주석이 달린 Java 클래스 @요소 클래스 경로 중에 발견되었습니다. Spring Framework는 이를 선택하여 애플리케이션 컨텍스트에서 다음과 같이 구성합니다. 봄콩 .
URI 대 URL
예
@Component public class Student { ....... }
@제어 장치: @Controller는 클래스 수준 주석입니다. 전문 분야입니다 @요소 . 클래스를 웹 요청 처리기로 표시합니다. 웹페이지를 제공하는 데 자주 사용됩니다. 기본적으로 리디렉션할 경로를 나타내는 문자열을 반환합니다. 주로 다음과 같이 사용됩니다. @RequestMapping 주석.
예
@Controller @RequestMapping('books') public class BooksController { @RequestMapping(value = '/{name}', method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } }
@서비스: 클래스 수준에서도 사용됩니다. 이는 클래스에 다음이 포함되어 있음을 Spring에 알려줍니다. 비즈니스 로직 .
예
package com.javatpoint; @Service public class TestService { public void service1() { //business code } }
@저장소: 클래스 수준 주석입니다. 저장소는 DAO (데이터 액세스 개체) 데이터베이스에 직접 액세스합니다. 저장소는 데이터베이스와 관련된 모든 작업을 수행합니다.
package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } }
스프링 부트 주석
Spring MVC 및 REST 주석
예
@Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; }