JSP(1)

위수현·2023년 3월 16일
0

session

session이란?

  • 하나의 웹 브라우저의 정보를 유지하기 위한 세션 정보를 저장
    (브라우저 종료 시 종료, 클라이언트 로그인 정보)

  • 내장객체로서 브라우저마다 한 개씩 존재하고,
    고유한 sessionID 생성 후 정보를 추출한다.

    	<장점>
    	-> 서버에서 접근할 수 있기 때문에
    	보안성이 좋고, 저장 용량의 한계가 거의 없다.
    
    	<단점>
    	-> 서버에 데이터를 저장하므로 서버에
    	부하가 걸릴 수 있다.

session 사용하기

  • 세션값 설정
    session.setAttribute("설정이름",값);

  • 세션유지시간 설정하기(초 단위)
    sesson.setMaxInactiveInterval();

  • 세션 삭제
    session.removeAttribute("설정이름");
    // 세션 전체 제거
    session.invalidate();

쿠키

쿠키란?

  • 웹 브라우저가 보관하고 있는 데이터로, 웹 서버에
    요청을 보낼 때 쿠키를 헤더에 담아서 전송한다.

<장점>
- 클라이언트의 일정 폴더에 정보를 저장하기 때문에
서버의 부하를 줄일 수 있다.

<단점>
1.정보가 사용자 컴퓨터에 저장되기 때문에 보안에 위협을 받을 수 있다.
2.데이터 저장 용량에 제한이 있다.
3.과자 브스러기처럼 작은 값을 저장할 수 있다.
4.일반 사용자가 브라우저 내의 기능인 "쿠키차단" 을 사용하면 무용지물

쿠키 vs 세션

  • 쿠키
    -> 클라이언트(=접속자PC)에 저장
    -> 저장형식 : text
    -> 만료시점 : 쿠기 저장시 설정
    -> 사용자원 : 클라이언트 리소스
    -> 용량제한 : 총 300개
    -> 속도 : 세션보다는 빠름
    -> 보안 : 세션보다는 안좋음

  • 세션
    -> 웹서버에 저장
    -> 저장형식 : Object
    -> 만료시점 : 브라우저 종료시 삭제
    -> 사용자원 : 웹 서버 리소스
    -> 용량제한 : 서버가 허용하는 용량제한
    -> 속도 : 쿠키보다는 느림
    -> 보안 : 쿠키보다는 좋음

JSP

JSP란?

  • JavaServer Pages

  • HTML코드에 Java코드를 넣어서 동적 웹페이지를
    생성하는 웹어플리케이션 도구이다.

  • HTML + java

  • HTML을 중심으로 JAVA와 연동하여 사용하는 웹언어이다.

  • JSP가 실행되면 자바 서블릿(servlet)으로 변환되며
    웹 어플리케이션 서버에서 동작되면서 필요한
    기능을 수행하고, 그렇게 생성된 데이터를 웹페이지와
    함께 클라이언트로 응답하게된다.

스크립트 태그

  • HTML 코드에 자바 코드를 넣어 프로그램이
    수행할 기능을 구현할 수 있다.

  • 선언문(declaration)

    -> 자바 변수나 메소드를 정의하는데
    샤용하는 태그
    <%! ... %>

  • 스크립틀릿(scriptlet)

    -> 자바 변수선언 및 자바 로직 코드를
    작성하는데 사용되는 태그
    <% ... %>

  • 표현문(expression)

    -> 변수, 계산식, 메소드호출 결과를
    나타내는 태그
    <%= ... %>

  • 지시자

    <%@ %>

  • 주석
    <%-- ... --%>

JSP 내장 객체

  • JSP 내장 객체
  • JSP 페이지 내에서 제공되는 특수한 클래스 형의 객체
  • 내장객체는 선언과 할당 없이 사용할 수 있다.

JSP 내장객체 종류

  • request : 웹 브라우저의 요청 정보를 저장하고 있는 객체
  • response : 웹 브라우저의 요청에 대한 응답 정보를
    저장하고 있는 객체
  • out : JSP 페이지에 출력할 내용을 가지고 있는 출력
    스트림 객체이다.
  • session : 하나의 웹 브라우저의 정보를 유지하기 위한
    세션 정보를 저장하고 있는 객체
  • application
  • pageContext
  • page
  • config
  • exception ...

디렉티브 태그

<%@ include file= "파일명" %>
  • 현재 jsp페이즈의 특정 영역에 외부 파일의 내용을 포함
    시키는 태그이다.
  • 보통 header와 footer는 대부분의 페이지에
    동일한 내용으로 작성되기 때문에 유지보수 및 편의를
    위해서 외부 파일로 만들 후 include하여 사용한다.

<예제>
1) 날짜 찍어보기


2-1) 간단한 계산처리(동적, 정적 비교)

i)

ii) 동적, 정적 차이

iii) 결과값 차이

2-2) 두 수의 계산처리

i)

2) 결과 확인


3) 간단한 표 만들기


4) 특정 값 선택하기

i) 값 선택

ii) 값 결과(오답)

iii) 값 결과(정답)


5) 이름 전송하기

i) 이름 전송

ii) 전송 결과(입력값 존재x)

iii) 전송 결과(입력값 존재x)


6) Post, get 두 가지 방식으로 데이터 전송하기

i)

ii-1) post 요청하기

ii-2) get 요청하기


7) include 적용하기

i) footer, header 확인

-> footer

-> header

2) include 사용 결과

profile
수현

0개의 댓글