URL 패턴 URL 패턴의 종류는 위의 그림과 같다. 애너테이션으로 URL매핑 시 원래는 위의 그림과 같이 @WebServlet(urlPatterns={"/hello", "/hello/*"}와 같이 URL을 여러 개 등록할 수 있다. URL 패턴에서도 우선순위가 있는데 표와 같이 정확히 일치하는 매핑 → 경로 매핑 → 확장자 매핑 → 디폴트 매핑 순이다. 위의 그림과 같이 애너테이션을 이용하여 패턴을 여러 개 지정할 수 있는데 등록된 URL 중 정확히 일치하는 패턴이 우선순위가 가장 높다. 참고로 loadOnStartup은 서블릿의 기본인 늦은 초기화를 이른 초기화로 바꿔주는 옵션이다. 서블릿 Context안에는 children과 servletMappings라는 map이 존재하는데 children은 서블..
1. 유효 범위(scope)와 속성(attribute) HTTP의 특징과 서블릿의 저장소(scope)에 대해서 알아보자. - HTTP의 가장 큰 특징은 상태 정보를 저장하지 않는다(Stateless) - 상태정보를 저장하지 않기 때문에 필요한 것이 저장소라는 개념이다. - 저장소를 범위에 따라서 서블릿은 4개의 저장소를 제공한다(map의 형태로 Key, Value를 갖는다) - 저장소에 저장 및 접근을 하기 위해서는 setAttribute() , getAttribute() 메서드를 사용한다. - 저장소의 읽기 값 즉 Key를 속성(attribute)라고 한다. - 저장소의 특징은 접근 범위, 생존기간으로 서로 다른 접근 범위와 생존기간을 가진 4개의 저장소를 가진다. pageContext - 지역변수를 ..
1. 서블릿과 컨트롤러(스프링)의 비교 - 서블릿에서는 @WebServlet("url")을 사용하여 URL을 매핑한다( 스프링에서는 @Controller + @ RequestMapping) - 스프링에서는 URL 매핑을 메서드 단위로 하기 때문에 한 클래스 안에 여러 URL 매핑을 할 수 있다는 장점을 가진다. - 서블릿에서는 @Webservlet을 매핑하는 클래스는 HttpServlet을 상속받아야 한다. - 자바는 단일 상속이므로 가능한 상속을 받지 않는 것이 유리하다 → 스프링에서는 @Controller 사용으로 개선 - 서블릿에서 service 메서드는 항상 고정이다. 매개변수로 request와 response 또한 고정이다. - 스프링에서는 메서드에서 필요한 매개 변수만 적어줄 수 있다. 2. ..
EL(expression Language) 란? 표현 언어(EL)는 값을 웹 페이지에 표시하는 데 사용되는 태그로 JSP출력에 대한 부분을 쉽게 하기 위해 개발된 태그이다. 표현식 에 비해 사용 방법이 더 간단하고 문법 체계가 더 직관적이라는 특징이 있다. EL 사용법은 ${ } 을 사용한다. 글을 정리하면서 느낀 EL의 가장 큰 장점은 JSP내장 객체의 속성 값들을 간편하게 꺼내 쓸 수 있게 끔 해주는 것이라고 생각한다. 밑의 내용들을 살펴보면서 EL의 특징들을 조금 더 자세히 살펴보자. EL에서 null의 경우 공백을 출력한다 ${null} // ""이므로 공백 출력 {%= null %} // null 출력 이로인해 request.getParameter() 메서드를 호출하였을 때 파라미터를 찾지 못할..