목록분류 전체보기 (14)
To Dare Is To Do!
HTTP란? HyperText Transfer Protocol의 약자인 HTTP는 텍스트 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜을 의미한다. 클라이언트와 서버 간의 통신을 관리하고 웹 페이지, 이미지, 동영상, 문서 등의 리소스를 전송하고 검색할 때 사용된다. ※ 리소스란 URL를 검색해서 받아온 결과로서 텍스트, HTML, 이미지 등 그 외 서버로부터 전달받은 데이터를 의미한다. HTTP 메서드 - HTTP 메서드란 클라이언트와 서버 사이에 이루어지는 요청(Request)과 응답(Response) 데이터를 전송하는 방식 = 서버에 주어진 리소스에 수행하길 원하는 행동, 서버가 수행해야 할 동작을 지정하는 요청을 보내는 방법 - HTTP 동사라고 부르기도 함 - 클라이언트가 ..
지난번 Controller만을 구현하여 위의 결과를 출력해 보고 Controller 속에서 활용된 어노테이션들을 살펴보았다. 이번에는 Controller 뿐만이 아니라 Service, Repository 등 클라이언트와 데이터베이스 사이의 과정을 모두 구현하고 각 계층이 스프링으로부터 어떻게 의존성이 주입되는지 확인해 보려고 한다. 먼저 의존성, 즉 객체가 주입되기 위해서는 Spring 컨테이너의 관리를 받는 객체(스프링 빈)가 되어야 하며 스프링 빈으로 등록하는 방법에는 @Component와 @Configuration + @Bean 조합이 있다. 뒤의 예시는 @Component를 활용한 예시이다. @Component TestController의 @Controller 어노테이션을 뜯어보면 이 어노테이션이..
다음과 같은 화면을 보기 위한 Controller를 구현하는 과정에서 어떠한 어노테이션이 사용되는지 확인해 보고자 한다. import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.ResponseBody; @Controller public class TestController { @RequestMapping(value="/test", method= RequestMethod..
# 1. Controller 클라이언트의 요청을 처리하고 사용자 인터페이스와 비즈니스 로직을 분리한다. 주로 사용자의 요청을 받아 Service로 넘겨주고 처리된 결과를 다시 받아 View 화면을 통해 반환하는 역할을 한다. # 2. Service Controller와 Repository의 중간 단계로서 Controller와 Repository의 직접적인 연결을 방지한다. 비즈니스 로직을 담당하여 데이터에 대한 처리 및 계산, 데이터베이스에 대한 접근을 수행한다 Controller와 Service를 분리하는 이유는? 코드 분리 : Controller는 클라이언트 요청 처리 및 사용자 인터페이스 관련 로직, Service는 비즈니스 로직을 담당하면서 각자의 역할에 집중 유지보수 용이 : 둘을 분리함으로써 ..
IoC란? IoC( Inversion of Control )는 제어의 역전으로 메소드나 객체의 호출 작업을 내부에서 직접 관리하지 않고 외부에서 결정하도록 하는 원칙을 의미한다. 이는 영화사의 연락(호출)을 기다리는 할리우드 배우의 상황에 비유하여 할리우드 원칙(Don't call us, we'll call you)라고 불리기도 한다. 왜 IoC를 사용하는가? 객체의 결합도를 줄임으로써 유연한 코드를 작성할 수 있도록 하여 유지 보수에 용이하다. -> 객체 지향 원칙을 잘 지킬 수 있다. + DIP란? DIP( Dependency Inversion Principle )는 의존 역전 원칙으로 상위 레벨 모듈이 하위 레벨 모듈에 의존하는 관계를 역전시키는 것을 의미한다. 이 때 지켜야 할 2가지 원칙으로 1..