스프링 HandlerMapping, pojo
무조건 사용자가 views로 접근 못하도록 WEB-INF를 만들어서 frontcontroller를 거쳐가야함
- HandlerMapping : request의 URL과 매칭되는 handler를 선택하는 역할
- command : VO(DTO) 와 같다고 생각하셔도 됩니다
- POJO : 일반적으로 우리가 알고 있는 getter, setter 같이 기본적인 기능만 가진 자바 객체
1. uri및 경로를 만든다음 이걸 result에 함축 시켜준다.
2. mappings라는 뚜껑에 URL과 매칭되는 handler인 HandlerMapping의 계급을 넣어준다.
3. service라는 변수에 mappings.result의 값을 가져오는데 result자체의 데이터를 못가져오니 뚜껑한개 더인 POJO로
감싸준다.
4. moveURL이라는 변수를 만들어주고
5. moveURL에 service객체를 갖는다.
- HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션입니다.
1. mappings에 HashMap을 생성 해준후 mappings('지정해줄 경로', 하위클래스 설정)
검색이 빠른 HashMap 자료구조 사용
key : 요청이 들어온 주소(String)
value : 호출할 POJO(POJO의 상위클래스인 command)
private HashMap<String, command> mappings;
// Hashmap 생성
public HandlerMapping() {
//mappings에 아무 값이 없으니 new로 생성해준다.
mappings = new HashMap<String, command>();
return에 web-inf/views/경로로 빠지게 된다.(viewResolver에서 설정 해줬으니 걱정 ㄴㄴ)
1. web-inf가 막고있으니 안된다. (그래서 web-inf/views/까지 삭제)
2. webServlet의 do를 Frontcontroller에서 지정해줬기 때문에 jsp대신 do를 써준다.