일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 서블릿
- 백준
- Callback
- 네이버
- controller
- Service
- 다이나믹프로그래밍
- 비동기
- was
- 알고리즘
- 면접
- Spring
- Promise
- response
- 부스터2기
- JSP
- 코딩테스트
- Spring MVC
- 파이썬
- servlet
- 다이나믹 프로그래밍
- 웹
- request
- 부스트코스
- 자바스크립트
- 기술면접
- Spring Framework
- IOC
- DI
- DP
- Today
- Total
Sh개발일기
JSP 문법 본문
학습 목표
- JSP에서 선언문을 이용해 필드와 메소드를 선언할 수 있다.
- JSP에서 자바 코드를 입력하는 방법을 알 수 있다.
- JSP에서 변수값을 출력할 수 있다.
- JSP에서 주석문을 작성할 수 있다.
핵심 개념
- 선언문(Declaration)
- 스크립트릿(Scriptlet)
- 표현식(Expression)
- 주석(Comment)
스크립트 요소의 이해
JSP에서는 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression) 이라는 3가지의 스크립트 요소를 제공한다.
- 선언문(Declaration) - <%! %> : 전역변수, 및 메소드 선언에 사용
- 스크립트릿(Scriptlet) - <% %> : 프로그래밍 코드 기술에 사용
- 표현식(Expression) - <%=%> : 화면에 출력할 내용 기술에 사용
각각의 스크립트 요소를 살펴보며 JSP문법에 대하여 알아보겠다.
선언문(Declaration)
- 선언문: <%! %>
- 선언문은 JSP내에서 필요한 멤버변수나 메소드가 필요할 때 선언해 사용하는 요소이다.
- 문법: <%! 문장 %>
선언문을 이용하여 service메소드(_jspService) 내부가 아닌 class body쪽에 코드를 작성할 수 있다. 일반적인 스크립트릿 안의 내용은 service메소드 내부에 작성된다. 선언의 순서는 크게 중요하지 않다.
스크립트릿(Scriptlet)
- 스크립트릿: <% %>
- 가장 일반적으로 많이 쓰이는 스크립트 요소
- 주로 프로그래밍의 로직을 기술할 때 사용
- 스크립트릿에서 선언된 변수는 지역변수
- 문법: <% 문장 %>
스크립트릿 안에서 for문을 돌리면서 html tag를 이용하여 화면에 표시하고 싶은 경우가 있을 수 있다. 이러한 경우 다음과 같이 스크립트를 작성할 수 있다.
눈여겨 볼 코드는 다음과 같다.
<%
for(int i=1;i<=5;i++){
%>
<H<%=i%>>아름다운 한글</H<%=i%>>
<%
}
%>
이와같이 스크립트릿 사이에 html tag를 표시하는것이 가능하다. 전시간 포스팅한 JSP -> Servlet의 내용을 잘 생각해보면 변환되는 과정을 이해할 수 있다. JSP의 핵심은 Servlet으로 변환되어 동작된다는 점으로, JSP -> Servlet이 어떻게 바뀔지에 대해 생각하는것이 핵심이다.
위 코드가 변환된 Servlet코드와 html코드는 다음과 같다.
표현식(Expression)
- 표현식: <%= %>
- JSP에서 웹 브라우저에 출력할 부분을 표현. 즉, 화면에 출력하기 위한 것
- 스크립트릿에서 출력할 부분은 내장객체인 out객체의 print() 또는 println()메소드를 사용하여 출력한다.
- 문법: <%= 문장 %>
주석(Comment)
JSP에서 사용할 수 있는 주석은 HTML주석, 자바주석, JSP주석이 존재한다. JSP주석의 경우 JSP자체의 주석이므로 Servlet으로 변환되지 않는다. 자바주석, HTML주석도 자신의 역할에 따라 마찬가지이므로 각각의 주석에 따른 처리과정을 생각할 수 있어야 한다.
- HTML주석 : <!--로 시작해서 -->로 끝나는 형태 ex) <!--html 주석입니다. -->
- JSP주석: JSP에서만 사용되며 <%--로 시작해 --%>로 끝나는 형태 ex) <%--JSP주석--%>
- 자바주석: 일반적인 자바의 주석과 같다 ex) // /* */ 등
각각의 주석이 언제 어떻게 변환되어 사용되는지 생각하고 사용할 수 있으면 된다.
'BoostCourse' 카테고리의 다른 글
리다이렉트와 포워드 (Redirect & forward) (0) | 2020.02.18 |
---|---|
JSP 내장객체 (0) | 2020.02.17 |
JSP의 정의와 라이프싸이클 (0) | 2020.02.17 |
Browser Event, Event object, Event handler (0) | 2020.02.13 |
window객체와 DOM (0) | 2020.02.10 |