-
[Script+jsp] 동적페이지, 스크립트 요소, 지시자 종류DBProgramming/JSP 2023. 6. 18. 11:00
- 웹페이지 기본 요청방법 : 사용자의 요청에 대한 웹 서버가 가동되고 응답을 한 후 꺼집니다.
- 정적페이지/ 동적페이지
→ 정적페이지 : 변하지 않는 성격을 가진 페이지
→ 동적페이지 : 자동으로 생성된 페이지, 기존 웹 서버에 새로운 기능을 가진 프로그램을 탑재하여 동적으로 HTML생성
- CGI(Common Gateway Interface) → 확장 CGI
→ 확장 CGI : 서버에서 동작하는 웹프로그래밍 기술 , 프로세스 생성방식의 변화로 시스템의 부하를 줄입니다.
(종류 : ASP,PHP,Servlet,JSP)
→ 사용자가 요청하는 것에 따라 동적인 페이지를 만들기 위 해 웹프로그래밍이 필요한데 동적인 프로그래밍을 하기 위한 기술이 ASP,PHP,Servlet,JSP,Node…
- Servlet : 자바 프로그램이 중심 자바로 html만드는것
→ 사용자의 요구가 큰 경우 프로그램이 복잡해질 때 JSP만으로 협업하기가 어려워져 Servlet 사용하게 됩니다.
- JSP: HTML중심 / 자바문법 사용하는 것
→ 서버에서 동작하는 웹프로그래밍 중 하나이다.
→ 동적인 페이지 생성을 위한 스크립트 언어 (자바언어기반)
→ 특징 : 객체지향적, 플랫폼 독립적, 네트워크 지향적, 뛰어난 보안성, 멀티스레드 기능
- MVC 패턴 : Model, View, Controller의 약자 입니다.
→ 하나의 애플리케이션, 프로젝트를 구성할 때 그 구성요소를 세가지의 역할로 구분한 패턴입니다.
(MVC로 인해 Servlet도 중요해짐)
- JSP → VIEW
- Servlet → Controller
동적 프로그램 만들기 :
- JSP, Servlet 은 웹사이트 상 코드 소스가 보여지지 않음.
- javascript는 소스코드가 다 보여짐 : 중요한 코드를 javascript로 쓰면 안됨
- Node.js로 인해 javascript가 중요해짐
** JSP 를 만들 때 내부적으로 Servlet 이 자동으로 만들어져서 Servlet 이 가동되는 것
스크립트 요소의 이해
- 스크립트 요소란?
→ JSP 프로그래밍에서 사용되는 문법의 표현 형태 - 스크립트 요소
- 선언문 : <%! %>
→ 내부적으로 생성된 Servlet 클래스에 맴버변수나 메소드를 선언할 수 있음. - 스크립트릿 : <% %>
→ 온갖 자바문법을 다 쓸 수 있음. - 표현식 : <%= %>
→ 출력기능 - 주석: <%-- --%>
- 선언문 : <%! %>
<body> <%-- 이것은 JSP의 주석입니다. (소스보기 시 노출되지 않습니다.)--%> <!-- 이것은 HTML의 주석입니다.(소스보기 시 노출됩니다.) --> <%! //이것은 자바문법 주석입니다. String title = "웹프로그래밍"; %> <h2>JSP 문장 구성요소</h2> <hr> <% int year = 2023; if(year == 2023){ title = title + year; } %> title : <%=title %><br> year : <%=year %><br> </body>
- HTML 에서 JSP로 서비스를 요청할 때 request 내장객체에 실려서 가게 됩니다.
*HTML <body> <h1>If-else Example</h1> <form action="if.jsp" method="post"> 이름 : <input type="text" name="name"><br> 좋아하는 색깔 : <select name="color"> <option value="yellow">노란색</option> <option value="green">초록색</option> <option value="blue">파란색</option> <option value="pink">분홍색</option> </select> <br> <input type="submit" value="보내기"> </form> </body> * JSP <% request.setCharacterEncoding("utf-8"); String name = request.getParameter("name"); String color = request.getParameter("color"); %> <body bgcolor="<%=color%>"> <h1>If-else Example</h1> <%= name %>님이 좋아하는 색깔은 <%=color %>입니다. </body>
- HTML <input type="text" name="name">에서 name으로 요청한 것을 JSP request 내장객체에 실어 보냄
지시자 종류 (3가지)
- page : <%@page %>
- import 할 때 사용
- errorPage, isErrorPage 따로 import해야함
- include : <%@include %>
- 공통적으로 사용할 JSP가 있을 때 사용
- taglib : <%@taglib %>
- 미리 만들어놓은 태그 라이브러리를 사용하고자 할 때 사용
- final 이란?
(메소드 앞, 변수 앞, 클래스 앞에 위치함)
→메소드 앞 : 오버라이딩 금지
→변수 앞 : 상수
→클래스 앞 : 상속 금지
'DBProgramming > JSP' 카테고리의 다른 글
[JSP/Servelt] JSP/Servelt 기본 개념 정리 1 (0) 2023.06.12