Hello, Freakin world!

Spring @RequestMapping과 같은 URL 매핑 프레임워크 구현하기 본문

Toy Project/URL Mapping 프레임워크 구현하기

Spring @RequestMapping과 같은 URL 매핑 프레임워크 구현하기

johnna_endure 2020. 3. 31. 13:13

이 프로젝트는 본래 채팅앱 프로젝트의 일부분이었으나, 

현재 채팅 프로젝트의 덩치가 워낙 커지는 바람에...  따로 분리했습니다.

 

그리고 이 부분은 애너테이션, 정규표현식, 리플렉션 등을 이용한

프레임워크에 필요한 편리한 기능을 구현하는 바탕이 될 수 있다고 판단해 따로 정리해두려고 합니다.

시나리오

서버는 클라이언트의 요청을 받고 controller 에 해당하는 객체에 request 정보를 넘겨 준다.

컨트롤러는 request에 포함된 url에 따라 핸들러를 매핑할 책임을 가진다.

 

우리는 이 핸들러들을 식별하기 위해 handlers 클래스를 작성할 때, 미리 식별정보를 같이 적어둔다.

@RequestMapping 이라는 애너테이션을 이용해 이를 수행한다. 

 

@RequestMapping에 url format을 요청과 1:1로 대응되도록 작성할 수도 있지만, ("/user/1/cws")

좀 더 유연하게 작성할 수도 있다. ("/user/{id}/{name}")

그리고 이 형태의 매핑에서 id와 name은 메서드의 인수로 값이 자동으로 넘어가게 하고 싶다.

(스프링의 @RequestMapping 과 동일한 기능이다)

Comments