[Web] JSP 문법


  • 스크립트 요소
    • 선언문(Declaration) - <%! %> : 전역변수 선언 및 메소드 선언에 사용
    • 스크립트릿(Scriptlet) - <% %> : 프로그래밍 코드 기술에 사용
    • 표현식(Expression) - <%= %> : 화면에 출력할 내용 기술에 사용

1. 선언문 예제

1
2
3
4
5
6
7
8
<body>
id : <%=getId() %>
<%!
    String id = "u001";
    public String getId() {
        return id;
    }
%>
cs

설명 : 선언문으로 getId() 메서드를 생성하고 스크립트릿에서 호출해서 사용하는 예제
코드를 실행한 후 .metadata 디렉토리 내부에 생성된 변형된 자바 코드를 확인해보면 아래와 같다

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public final class exam1_jsp extends org.apache.jasper.runtime.HttpJspBase
    implements org.apache.jasper.runtime.JspSourceDependent,
                 org.apache.jasper.runtime.JspSourceImports {
    String id = "u001";
    public String getId() {
        return id;
    }
....
 public void _jspService( ... ) {
    ...
    out.write("id : ");
    out.print(getId() );
    ...
}
cs


2. 스크립트릿 예제

1
2
3
4
5
6
7
8
9
<body>
<%
    for(int i=1;i<=5;i++){
        
%>
    <h<%=i %>>아름다운 한글 </h<%=i %>>
<% }
%>
</body>
cs

설명 : 스크립트릿과 html을 섞어서 사용할 수 있다. 












3. 주석
  JSP페이지에서 사용할 수 있는 주석 - HTML주석, 자바 주석, JSP 주석
  • HTML -> <!-- ...-->
  • JSP -> <%-- ... --%>
  • JAVA -> //, /* */
  
JSP 주석은 서블릿으로 바뀔 때 주석이므로 바뀌지 않는다. JAVA 주석은 JAVA로 바뀌기 때문에 모두 주석으로 같이 바뀌지만 실행은 안된다. HTML 주석은 JAVA로도 바뀌고 응답결과에 포함되 되지만 실제 응답결과가 넘어왔을 때 브라우저가 주석으로 인식하기 때문에 화면에 보이지는 않는다.

주석 예제

1
2
3
4
5
6
7
8
9
<body>
<%--jsp 주석입니다 
    여러줄로 사용 가능합니다 
    --%>
<!-- html 주석입니다. -->
<%
    for(int i=1;i<=5;i++){
        //java주석입니다. 
%>
cs

실행 후 소스 보기 했을 때 - html 주석만 보임

1
2
3
4
5
6
7
...
<body>
    <!-- html 주석입니다. -->
    <h1>아름다운 한글 </h1>
cs

변형된 자바 코드 확인 - html, java 주석은 보이고 jsp 주석은 보이지 않음

1
2
3
4
      out.write("\t<!-- html 주석입니다. -->\r\n");
    for(int i=1;i<=5;i++){
        //java주석입니다. 
cs



No comments:

Powered by Blogger.