Spring 어노테이션 개념 정리 (계속추가)

·2022년 4월 3일
0

@Configuration

클래스 내에 한 개 이상의 Bean을 등록하기 위한 어노테이션

@Bean

Bean 등록 어노테이션이지만 @Configuration과 다르게 싱글톤 X

@MapperScan(basePackages="", annotationClass=Mapper.class)

-> basePackages="" 경로 하위에 있는 interface들을 스캔해서 인터페이스의 구현체(ex. DaoImpl)를 생성

-> annotationClass=Mapper.class 어노테이션의 클래스 타입이 Mapper라고 붙어있는 클래스만 스캔

@Mapper

매퍼 등록을 하기 위해 인터페이스에 사용

@Service("")

서비스 구현에서 사용되며 비즈니스 로직을 수행하는 클래스라는 것을 설정 / + 의존성 주입을 하기 위해

@Autowired

객체에 대한 의존성 주입 (생성자, setter, 필드)

@SpringBootApplication

스프링부트 애플리케이션 최초 실행 클래스

@Component

개발자가 직접 작성한 클래스를 Bean으로 등록하는 어노테이션

@Controller

사용자에게 View를 응답해주는 어노테이션

@RequestBody

비동기 데이터요청 시 필요한 어노테이션<JSON/XML> : ajax에서 파라미터를 받아올 때!

@ResponseBody

비동기 데이터응답 시 필요한 어노테이션<JSON/XML> : return 값에 url이 아닌 Service에서 리턴받은 값 그 자체를 그대로 보낼 떄! (자동 converter)

  • ajax에서 데이터를 보내지 않고 조회만 해올 때 ResponseBody만 사용

@RequestParam

파라미터 값 전달 받기(controller), url로 전달된 name값을 전달 받음.

@PathVariable

@PostMapping("member/{idx}")

public void testMethod(@PathVariable("idx") int id ){

와 같이 구분자에 들어올 값을 처리해야할 때 사용

<Test 관련 어노테이션>

@SpringBootTest

스프링이 제공하는 SpringRunner를 이용하여 테스트 실행

@RunWith(SpringRunner.class)

어플리케이션 설정을 해당 설정 파일에서 가져옴

@ContextConfiguration(classes = {Boot___Application.class})

가지고 있는 설정들을 단위 테스트로 가져와서 사용하겠다는 어노테이션

@Test

테스트 진행할 메소드에 작성하는 어노테이션

@Disabled

해당 메소드의 테스트를 진행하지 않음

@BeforeEach

모든 메소드 테스트 수행 전마다 실행

@BeforeAll

테스트 메소드 수행 전 한번만 실행

0개의 댓글