본문 바로가기
boostcource/boostcourse_web programming

JSP -1

by sgyeong 2024. 4. 15.

JSP

 

  • 스크립트 요소의 이해
    JSP페이지에서는 선언문(Declaration), 스크립트릿(Scriptlet), 표현식(Expression)이라는 3가지 스크립트 요소를 제공한다. 
선언문 (Declaration)     <%!   %>   : 전역변수 선언 및 메소드 선언에 사용
스트립트릿 (Scriptlet)    <%    %>  : 프로그래밍 코드 기술에 사용
표현식 (Expression)      <%=  %>  : 화면에 출력할 내용 기술에 사용

 

  • 선언문 (Declaration)
    - 선언문 : <%! %>

       - 선언문은  JSP 페이지 내에서 필요한 멤버변수나 메소드가 필요할 때 선언해 사용하는 요소

       - 선언문의 문법 : <%! 문장 %>

 

 

실행 결과

선언문에서 변수 및 메소드 선언

<%!

     String id = "u001";    //멤버변수 선언
     public String getId() {    //메소드 선언
          return id;
     }

%>

 

 

  • 스크립트릿 (Scriptlet)
    - 스크립트릿 : <%  %>
    - 가장 일반적으로 많이 쓰이는 스크립트 요소
    - 주로 프로그래밍의 로직을 기술할 때 사용한다.
    - 스크립트릿에서 선언된 변수는 지역변수이다.
    - 스크립트릿의 문법 :  <% 문장  %>

 

 

실행 결과

아래 코드와 동일하다.

 

  • 표현식 (Expression)
    - 표현식 : <%= %>
    - JSP페이지에서 웹 브라우저에 출력할 부분을 표현한 것, 즉 화면에 출력하기 위한 것이다.
    - 스크립트릿내에서 출력할 부분은 내장객체인 out객체의 print() 또는 println()메소드를 사용해서 출력한다.
    - 표현식의 문법 : <%= 문장 %>


  • 주석 (Comment)
    - JSP페이지에서 사용할 수 있는 주석
    HTML주석, Java주석, JSP주석

    - HTML 주석
    HTML주석은 <!--   --> 형태
    HTML 주석은 HTML주석을 사용한 페이지를 웹에서 서비스할 때 화면에 주석이 내용이 표시되지는 않으나, [소스보기]를 수행하면 HTML주석의 내용이 화면에 표시된다.
    - HTML 주석의 예시
    <!-- html주석입니다. -->

    - JSP 주석
    JSP페이지에서만 사용되며 <%-- --%>로 끝나는 형태
    JSP주석은 해당 페이지를 웹 브라우저를 통해 출력 결과로서  표시하거나, 웹 브라우저 상에서 소스 보기를 해도 표시되지 않는다. 또한 JSP 주석 내에 실행 코드를 넣어도 그 코드는 실행되지 않는다.
    - JSP주석의 예시
    <%-- JSP주석입니다. --%>

    - Java 주석
    Java주석은 //, /* */을 사용해서 작성
    //은 한 줄짜리 주석을 작성할 때 사용되고, /* */은 여러 줄의 주석을 작성할 때 사용한다.
    스크립트릿이나 선언문에서 사용되는 주석으로, Java와 주석 처리 방법이 같다.
    - Java주석의 예시
    // 주석
    /* 주석
    여러 줄에 걸친 주석입니다.
    */

 

(소스 보기)

html주석은 화면에 그대로 출력이 된다.

 

 

 

 

 

 

참고 : boostcourse  https://www.boostcourse.org/web316/lecture/16704?isDesc=false

 

웹 프로그래밍(풀스택)

부스트코스 무료 강의

www.boostcourse.org

 

'boostcource > boostcourse_web programming' 카테고리의 다른 글

리다이렉트 (redirect)  (1) 2024.04.18
JSP -2  (0) 2024.04.15
JSP (Java Server Page), JSP 라이프싸이클  (0) 2024.04.13
JavaScript Debugging  (0) 2024.04.13
Ajax  (0) 2024.04.13