스프링 FC(프론트 컨트롤러)에서
HandlerMapper가있다
HM
핸들러
현재 FC는
forward를 받기위해 if를 사용했다
Action action =handler.getAction(commend);
ActionForward forward = action.execute(request,response);
핸들러에게 부탁을 해서 받아오겠다
스프링엔 있지만
자바에는 없기때문에 만들어 보았다
class HandlerMapper 생성
HandlerMapper 는 pojo이다
사용자의 요청정보에 알맞는 Controller(==Action 객체)를 반환
private Map<String,Action> mappings;
커맨드에 인해 알맞는 액션을 반환하기위해 map이 가지고있음
하지만 객체 생성이 안되어있기때문에
생성자를 이용해 new 시켜준다
public HandlerMapper() {
this.mappings=new HashMap<String, Action>();
}
지금은 빈깡통이기 때문에 넣어준다
this.mappings.put("/main.do",new MainAction());
FC :
Action action =handler.getAction(commend);
// 나한테 Action 객체 주라~=> 팩토리 패턴
: 요청에 대해 알맞은 객체를 반환하는 패턴
핸들러 매퍼가 가장 대표적인 팩토리 패턴을 사용하는 클래스입니다