스프링 중간점검(진행중)

박현우·2021년 3월 26일
0

Spring

목록 보기
6/11

그레이들

  • 소스 코드와 의존성 라이브러리를 엮어 컴파일하여 패키징하는 빌드 도구.
  • 전역 변수 설정, 각종 라이브러리의 의존성 추가 및 버전 관리 등등에 주로 쓰임.

단위테스트

  • 만든 모듈을 서버를 닫지 않고 테스트할때 사용.

LOMBOK

  • toString, get, set 등의 메소드를 어노테이션으로 컴파일 시 자동 생성해줌.

각종 어노테이션


롬복 어노테이션

@Getter

  • 선언된 모든 필드의 get 메소드를 생성해 줍니다.

@RequiredArgsConstructor

  • 선언된 모든 final 필드가 포함된 생성자를 생성해 줍니다.
    final이 없는 필드는 생성자에 포함되지 않습니다.

Controller 어노테이션

@RestController

  • 컨트롤러를 JSON을 반환하는 컨트롤러로 만들어 줍니다.

@GetMapping

  • HTTP Method인 GET의 요청을 받을 수 있는 API를 만들어 줍니다. /hello로 요청이 오면 String hello를 반환합니다.

테스트 어노테이션

@Autowired

  • Bean을 주입받습니다.

private MockMvc mvc

  • 웹 API 테스트할때 사용
  • GET,POST 등에 대한 API 테스트가 가능

@WebMvcTest

스프링 어노테이션 중 Web에 집중할 수 있는 어노테이션입니다.
@Controller, @ControllerAdvice 등을 사용할 수 있습니다.

assertThat

  • assertj라는 테스트 검증 라이브러리의 검증 메소드입니다.
  • 검증하고 싶은 대상을 메소드 인자로 받습니다.
  • 메소드 체이닝이 지원되어 isEqualTo와 같이 메소드를 이어서 사용할 수 있습니다.

isEqualTo

  • assertj의 동등 비교 메소드입니다.
  • assertThat에 있는 값과 isEqualTo의 값을 비교해서 같을 때만 성공입니다.

기타 어노테이션

@SpringBootApplication

  • 스프링 부트의 자동 설정, Bean 읽기와 생성을 자동으로 설정.

추가 내용

자바 빈즈(beans)

  • JSP파일에서 사용 가능한 객체.
  • 수 많은 파라미터를 담아 사용할 수 있어 폼 데이터 처리에 좋음.
  • 접근 제어자는 private, 접근은 getter,setter

Spring MVC Architecture

  • Model
    자바 빈즈와 같이 어플리케이션 상태를 나타내고, 비즈니스 로직을 처리함.(ex CRUD)
  • View
    컨트롤러 하위에 종속되있고 모델이나 컨트롤러에서 요청이 오면 화면 보여줘야됨.(ex JSP, mustache같은 템플릿엔진)
  • Controller
    요청을 받으면 모델, 뷰에 요청사항을 알맞게(알아듣게) 넘겨주고 업데이트 한다.

0개의 댓글