Spring Boot 4

어노테이션 정리

- MVC Model : 화면에 필요한 걸 담아간다. View : 화면 그리는 것에 집중 Controller : 비즈니스 로직에 집중 - @Service - @Repository - @Controller @GetMapping, @PostMapping ... @ResponseBody : HttpMessageConverter가 동작해서 API형태로 리턴 즉 JSON포맷으로 전달한다.( 객체 리턴시, 객체 멤버 JSON형식으로 리턴됨) @RestController : 컨트롤러를 JSON을 반환하는 컨트롤러를 만들어 진다. 이는 @Responsebody를 함수마다 안붙여주고 해당 컨트롤러내의 함수는 다 API형태로 리턴하게 해줌 요청이 들어오면 Controller를 가장 먼저 찾는다. 이후 Static을 찾아간..

Spring Boot 2022.03.20

빈 등록하기

- 스프링 빈 (in 스프링 컨테이너) 등록하는 2가지 방법이 있다. 1. 컴포넌트 스캔(@Controller,@Service,@Repository)와 자동 의존관계 설정(@Autowired) 근데 왜 컴포넌트 스캔이냐? => @Component라는 어노테이션 안에 위 Controller,Service,Repository같은 것들이 포함되어 있다. 젤 처음 Main실행될 때 패키지 하위는 다 뒤져서 포함시킨다. 참고 : 스프링은 스프링 컨테이너에 스프링 빈을 등록할 때 기본으로 싱글톤으로 등록한다. 따라서 같은 스프링 빈이면 같은 객체이다. 2. 자바 코드로 직접 스프링 빈 등록하기 설정 파일에 이런 것들을 등록하라고 적어놓으면 된다. 정형화되지 않거나 상황에 따라 구현 클래스를 변경해야하면 2번 방법..

Spring Boot 2022.03.20

메이븐(Maven) vs 그래들(Gradle)

Spring Boot를 편리하기 생성하기 위해 Spring Initializer를 사용할 수 있다 이때 Project에서 Maven과 Gradle을 골라야 하는데 어떤 차이가 있는지 정리하고자 한다. Maven은 자바용 프로젝트 관리 도구이다. 프로젝트를 진행함에 따라 여러 기능에 필요한 라이브러리를 사용할 수 밖에 없다. 이떄 이러한 라이브러리는 서로 연관되어 있는 라이브러리도 있고 업데이트도 되어서 프로젝트가 성공적으로 빌드되야 한다. 이러한 역할을 도와주는 것이 프로젝트 관리 도구이다. Gradle은 Groovy를 이용한 빌드 자동화 시스템이다. 여기서 Groovy는 언어인데 이 언어로 빌드에 필요한 스크립트를 작성하는 것이다. 이는 안드로이드 앱의 공식 빌드 시스템과 동일하다. 기존 메이븐의 경우..

Spring Boot 2022.03.19