ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP 예제
    Web/JSP, JavaScript 2018. 9. 3. 17:00

    JSP는 Java Server Pages 의 약어로 HTML 내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여 웹 브라우저에 돌려주는 언어이다. html에서도 반복을 사용할 일은 굉장히 많은데 이를 자바의 반복문을 통해 보다 간편하게 사용할 수 있도록 돕는 언어로 생각하면 되겠다. 실무에서 10여년 전부터 사용되던 언어지만 지금은 더 편한 언어들이 많이 나와 잘 사용하지 않는다. 예제를 통해 간단한 개념만 이해하도록 하자.


    1. 프로젝트 파일의 webapp에서 마우스 오른쪽 버튼
    new - others 클릭

    2. jsp file 찾아 Next 버튼 클릭

    3. 파일명 정하고 Finish 버튼 클릭해 JSP 파일 생성 후 다음과 같이 파일 작성한다.


    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    <%@ page import="java.util.List, java.util.ArrayList" %>
    <!-- 페이지 디렉티브 : 페이지에 대한 설정들 -->
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    	<head>
    		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    		<title>Insert title here</title>
    	</head>
    	<body>
    	<h3> 나의 정보 </h3>
    	<dl>
    		<ol>
    			<li>이름 : 박민우</li>
    			<li>거주지 : 노원</li>
    			<li>직업 : 백수</li>
    		</ol>
    		
    		<%
    			List<String> hobbies = new ArrayList<>();
    			hobbies.add("자전거 타기");
    			hobbies.add("야구장 가기");
    			hobbies.add("헌혈");
    		%>
    	<h3>취미</h3>
    		<ol>
    			<%
    				// Scriptlet
    				// HTML 문서 중간에 JAVA Code를 작성할 수 있는 영역
    				// 클래스가 없이 사용 가능하다.
    				for(String hobbie : hobbies){
    			%>
    			<li><%=hobbie%></li> <!-- %= 를 통해 해당 객체 값 문자열로 출력 가능
    			out.println(hobbie)로 사용해야 하는 번거로움을 줄여준다. -->
    			<%
    				// 다음과 같이 for문의 괄호도 나눌 수 있다.
    				// 그 사이에 html 파일이 올 수도 있다.
    				}
    			%>
    		</ol>
    	</dl>
    
    	</body>
    </html>
    

    첫번째 ol 태그에서는 리스트 멤버들을 하나하나 입력해줬다. 보다 많은 반복작업이 필요하다면 두번째 ol의 Scriptlet을 통해 자바 코드를 접목시켜 반복작업의 수고를 줄일 수 있다. Scriptlet은 <% %> 기호를 통해 사용한다.

    http://localhost:8080/hello/me.jsp
    수행하면 다음과 같이 결과가 나온다. 
    hello : 프로젝트명
    me.jsp : 브라우저에서 출력하고자 하는 파일명
     
    상기한 코드는 java와 jsp 두가지 언어가 혼합되어 있다. 이와 같은 방식을 Model 1이라고 한다. 코드가 길어지면 굉장히 복잡해져 알아보기 힘들어지는 경우가 빈번하다. 이를 극복하기 위해 jsp와 java를 분리하려는 시도를 했고, 그 결과 등장한 객체가 서블릿(servlet)이다. 서블릿은 다음 포스팅에 작성하도록 한다.

    태그들에 대한 정보는 
    https://www.w3schools.com/

    에서 보다 편하게 얻을 수 있다. 해당 페이지 사용 방법은 환경설정 카테고리에서 참조하면 된다. 



Designed by Tistory.