목록Spring (9)
To Dare Is To Do!
다음과 같은 화면을 보기 위한 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..
어노테이션이란? 사전적 의미로 주석을 의미하는 어노테이션은 자바에서 코드 사이에 쓰이며 특별한 의미와 기능을 수행할 수 있도록 추가적인 정보를 제공하는 기술이다. 대표적으로 코드 작성 시 문법 에러를 체크하도록 정보를 제공하거나 빌드나 배치 시 코드를 자동으로 생성할 수 있도록 정보를 제공한다. 오버라이딩을 구현시 override 어노테이션의 유무는 어떤 차이가 있을까? class Parent { public void hello(String name) { System.out.println("안녕하세요, 저는 " + name + "입니다."); } } class Child extends Parent{ // @Override가 없다면? public void hello() { System.out.println..