자바 웹 프로그래밍

준비중..

자바 웹 프로그래밍

나만의 웹사이트를 만들어 보자!

07 JSP를 만나다: JSP 스크립트

# JSP를 만나다: JSP 스크립트 ## 목차 1. 학습목표 2. JSP 스크립트란? 3. JSP 스크립트 종류 - 선언부 - 표현식 - 스크립트릿 4. 실습하기 ## 학습목표 + JSP 스크립트를 활용한 페이지 구현능력 향상 ## JSP 스크립트란? 앞서 우리는 JSP는 HTML문서에 Java문법을 삽입 가능케 한다고 배웠다. 그걸 가능하게 하는 문법이 바로 JSP 스크립트다. ## JSP 스크립트의 종류 JSP 스크립트는 선언부, 표현식, 스크립트릿으로 나뉜다. | 종 류 | 형 식 | 용 도 | |:-------------------:|:-----------:|--------------------------------| | 선언부(declaration) | `<%! ... %>` | 변수 또는 메쏘드를 선언 | | 표현식(expression) | `<%= ... %>` | 계산식 또는 메쏘드결과를 문자열로 표현 | | 스크립트릿(scriptlet) | `<% ... %>` | Java 문법을 기술 | ### 선언부(declarations) 선언부에는 변수 또는 메소드를 정의한다. 변수와 메소드가 선언되면 해당파일 어느곳든지 사용가능하다. ``` <%! String name = "JSP Ninja"; int age = 31; %> ``` ### 표현식(expressions) 표현식은 결과 출력을 위해 사용한다. JSP의 `println()`이다. ``` <h1><%= name %></h1> <p><%= sayHello() %></p> ``` ### 스크립트릿(scriptlet) 스크립트릿 속에는 기타 모든 자바 문법을 기술 가능하다. ``` <% for (int i = 0; i < 10; i++) { %> <p>Hello World!! <%= i %></p> <% } %> ``` ## 실습하기 뼈대 코드를 참조하여 아래의 페이지를 만드시오. ![Imgur](https://i.imgur.com/o9ENTZS.png) 뼈대코드 ``` <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! class Player { Integer number; String name; String position; public Player(Integer number, String name, String position) { this.number = number; this.name = name; this.position = position; } } %> <%! int[] numbers = {1, 2, 3, 4, 5, 6}; String[] names = {"슈테겐", "세메두", "피케", "라키티치", "부스케츠", "수아레스"}; String[] positions = {"GK", "DF", "DF", "MF", "MF", "MF"}; Player[] players = new Player[numbers.length]; %> <% for (int i = 0; i < numbers.length; i++) { players[i] = new Player(numbers[i], names[i], positions[i]); } %> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Bootstrap CSS --> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"> <title>Hello JSP</title> </head> <body class="container"> <div class="jumbotron"> <h1>선수</h1> </div> <table class="table table-striped"> <thead class="thead-dark"> <tr> <th>번호</th> <th>포지션</th> <th>이름</th> </tr> </thead> <tbody> <!-- 반복문과 표현을 사용하여 테이블을 완성하시오. --> <tr> <td>...</td> <td>...</td> <td>...</td> </tr> </tbody> </table> <!-- Optional JavaScript --> <!-- jQuery first, then Popper.js, then Bootstrap JS --> <Script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <Script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script> <Script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> </body> </html> ``` ## 요약 1. JSP 스크립트를 사용하면 HTML에 Java문법을 사용할 수 있다. 2. 선언부(`<%! ... %>`)에서는 클래스와 변수, 메소드 등을 정의할 수 있다. 3. 표현식(`<%= ... %>`)은 결과값을 출력한다. 4. 스크립트릿(`<% ... %>`)은 모든 자바문법의 사용이 가능하다.