본문 바로가기

jsp

jsp 첫 날 수업

728x90
반응형

<jsp의 유래 >

아파치는 웹서버

항상 클라이언트가 웹서버 대상으로 움직임

엔진의 이름이 코요테 엔진 (정적, 동적을 분석함 정적인 요청은 

어플리케이션 서버 - 톰캣 왓스? 

 |

CGI 하드웨어특성 

 |

서블릿 

 |

jsp

 

 

jsp 형태

<%@ page contentType=“text/html;  charset=euc-kr” %>     <= 설정부분
<%@ page import=“java.util.Date” %>                          :JSP페이지에 대한 설정 정보

<html>
<head><title>리스트1.1</title></head>
<body>

<%
    Date nowTime = new Date();
%>  
                                                        <=생성부분
현재 시간은 <%= nowTime %>입니다.                          : HTML 코드 및 JSP 스크립트

</body>
</html>
<%@ page contentType=“text/html;  charset=euc-kr” %>
                                                       <= 디렉티브
<%@ page import=“java.util.Date” %>

<%
    Date nowTime = new Date();                         <= 스크립트 요소
%>

<html>
<head><title>리스트1.1</title></head>
<body>

현재 시간은 <%= nowTime %>입니다.                      <= 표현식

</body>
</html>

jsp는 웹 어플리케이션 프로그래밍을 하는데 필요한 기능을 제공해 주는 '기본객체'이다.

        jsp페이지 내부에서 사용되는 간단한 스크립트 언어이다.

 

 

jsp 페이지의 구성요소

   1. 디렉티브(Directive)

      - jsp페이지에 대한 설정 정보를 지정할 때 사용한다.

디렉티브  설명
page

JSP 페이지에 대한 정보를 지정한다. JSP가 생성하는 문서의 타입, 출력 버퍼의 크기, 에러 페이지 등 JSP 페이지에서 필요로 하는 정보를 입력한다.

 

- page 디렉티브 : jsp 페이지에 대한 설정 정보를 지정할 때 사용

                       jsp페이지가 어떤 문서를 생성하는지, 어떤 자바 클래스를 사용하는지, 세션에 참여여부, 출력버퍼의

                       존재 여부와 같은 실행에 필요한 정보를 입력한다.

                    <%@ page contentType=“text/html; charset=euc-kr” %>

                    <%@ page import=“java.util.Date” %>

속성 설명 기본값

contentType

JSP페이지가 생성할 문서의 타입을 지정.

생성할 응답 문서의 MIME 타입을 입력한다.

“text/html”, “text/xml”, “text/plain” .

text/html
import

JSP 페이지에서 사용할 자바 클래스를 지정.

 

trimDirectiveWhitespace

출력 결과에서 템플릿 텍스트의 공백 문자를 제거할지의 여부를 지정한다.

false

pageEncoding

JSP 페이지 자체의 캐릭터 인코딩을 지정한다.

 

    

 

 

   2. 스크립트 요소

     - jsp에서 실시간으로 문서의 내용을 생성하기 위해 사용되는 것이 스크립트 요소이다.

     - 사용자가 폼에 입력한 정보를 데이터베이스에 저장 할 수 있으며, 데이터베이스로부터 글을 읽어와 출력도 할 수

       도 있다.

스크립트 요소 설명 문법 구조
스크립트릿(Scriptlet)
   :자바 코드를 실행한다
jsp페이지에서 자바 코드를 실행할 때 사용되는 코드의 블록이다. <%
     자바코드 1;
     자바코드 2;
     지바코드 3;
%>
표현식(Expression)
   :값을 출력한다
어떤 값을 출력 결과에 포함시키고자 할때 사용된다 <%= 값 %>
선언부(Declaration)
   :자바 메서드(함수)를 만든다
jsp페이지에서 스크립트릿이나 표현식에서 사용할 수 있는 함수를 작성할 때 사용된다. <%!
     public 리턴타입 메소드명
                         (패러미터 목록)
              자바코드들...
%>

 

 3. request 기본객체

    - 클라이언트가 전송한 요청 정보를 제공하는 것이 바로 request 기본 객체이다.

    - 기능 :  클라이언트(웹 브라우저)와 관련된 정보 읽기 기능 

                서버와 관련된 정보 읽기 기능

                클라이언트가 전송한 요청 파라미터 읽기 기능

                클라이언트가 전송한 요청 헤더 읽기 기능

                클라이언트가 전송한 쿠키 읽기 기능

                속성 처리 기능 

    - 기본 객체의 클라이언트 및 서버 정보 관련 메소드

속성

리턴 타입

설 명

getRemoteAddr()

String

웹서버에 연결한 클라이언트의 IP 주소를 구한다. 게시판이나 방명록등에서 글 작성자의 IP 주소가 자동으로 입력되기도 하는데, 이때 입력되는 IP 주소가 바로 이 메서드를 사용하여 구한 것이다.

getContentLength()

long

클라이언트가 전송한 요청 정보의 길이를 구한다. 전송된 데이터의 길이를 알 수 없는 경우 -1을 리턴한다.

getCharacterEncoding()

String

클라이언트가 요청 정보를 전송할 때 사용한 캐릭터의 인코딩을 구한다.

getContentType()

String

클라이언트가 요청 정보를 전송할 때 컨텐트의 타입을 구한다.

getProtocol()

String

클라이언트가 요청한 프로토콜을 구한다.

getMethod()

String

웹 브라우저가 정보를 전송할 때 사용한 방식을 구한다.

getRequestURI()

String

웹 브라우저가 요청한 URL에서 경로를 구한다.

getContextPath()

String

JSP 페이지가 속한 웹 어플리케이션의 컨텍스트 경로를 구한다.

getServerName()

String

연결할 때 사용한 서버 이름을 구한다.

getServerPort()

int

서버가 실행 중인 포트 번호를 구한다.

속성

리턴 타입

설 명

getParameter(String name)

String

이름이 name인 패러미터의 값을 구한다.

존재하지 않을 경우 null을 리턴한다.

getParameterValues(String name)

String[]

이름이 name인 모든 패러미터의 값을 배열로 구한다. 존재하지 않을 경우 null을 리턴한다.

getParameterNames()

java.util.Enumeration

웹 브라우저가 전송한 패러미터의 이름을 구한다.

getParameterMap()

java.util.Map

웹 브라우저가 전송한 패러미터의 맵을 구한다. 맵은 <패러미터 이름,  > 쌍으로 구성된다.

 

GET 방식 전송과 POST 방식 전송

 

 

4. response 기본 객체

   - response 기본 객체는 request 기본 객체와 반대의 기능을 수행

   - response 기본 객체는 웹 브라우저에 보내는 응답 정보를 담는다 

   - 웹 브라우저에 헤더 정보 전송하기

   - 웹 브라우저 캐시 제어를 위한 응답 헤더 입력

   - 리다이렉트를 이용해서 페이지 이동하기 

 

 

jsp가 제공하는 기본 객체

기본 객체

실제 타입

    

request

javax.servlet.http.HttpServletRequest 또는

javax.servlet.ServletRequest

클라이언트의 요청 정보를 저장한다.

response

javax.servlet.http.HttpServletResponse 또는

javax.servlet.ServletResponse

응답 정보를 저장한다.

pageContext

javax.servlet.jsp.PageContext

JSP 페이지에 대한 정보를 저장한다.

session

javax.servlet.http.HttpSession

HTTP 세션 정보를 저장한다.

application

javax.servlet.ServletContext

웹 어플리케이션에 대한 정보를 저장한다.

out

javax.servlet.jsp.JspWriter

JSP 페이지가 생성하는 결과를 출력할 때 사용되는 출력 스트림이다.

config

javax.servlet.ServletConfig

JSP 페이지에 대한 설정 정보를 저장한다.

page

java.lang.Object

JSP 페이지를 구현한 자바 클래스 인스턴스이다.

exception

java.lang.Throwable

예외 객체. 에러 페이지에서만 사용된다.

------------------------정리중 -----------------------------------------------------------

 

 

 


프로젝트 새롭게 생성 ddit 

꼭 서버가 필요 버전

 

next 

설정파일은 config에

패키지와 클래스는 src 에  

동일한 코드는 ? common 

참고 서류 등은 doc

 

next 

웹 어플리케이션의 설정파일이기땨ㅐ문에 꼭 체크하기

 

 

서블릿토들러가 바로 서버  

그림 설명 추가하기

 

 

 

 

 

 

 

 

content.jsp

서버내에서만 

 

 

여기가 실제서버 

 

여기는 낸가 만든 웹 어플리케이션 재설치한 곳 

org.eclipse.wst.server.core

이클립스는 ddit를 wtp에서 재배치를 한다 ? 

 

 

이번엔 헤더 jsp 파일 만들기  

웹어플리케이션 폴더에서 jsp - apls 파일 노트패드로 열기 

 

 

 

 

 

 

 

 

-Djava.net.preferIPv4Stack=true 추가하기

 

 

 

 

 

 

form[action=/ddit/01/gugudanResult/jsp]>select[name=dan]>option[value=$]*8^input[type=submit value=전송]  

tap 누르면 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

'jsp' 카테고리의 다른 글

struts  (0) 2020.07.06
file 업로드  (0) 2020.06.24
jsp 두번째 시간  (0) 2020.06.09
jsp 환경설정  (0) 2020.06.01