Notice
Recent Posts
Recent Comments
Link
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

학습기록남기기

2022_05_12_JSP_5일 본문

수업_정리

2022_05_12_JSP_5일

backend_na 2022. 5. 12. 17:36

쿠키 vs 세션

  • 쿠키 대신에 세션을 사용하는 가장 큰 이유는 세션이 쿠키보다 보안에서 앞서기 때문입니다.
  • 쿠키의 이름이나 데이터는 네트워크를 통해 전달되기 때문에 HTTP 프로토콜을 사용하는 경우 중간에서 누군가가 쿠키의 값을 읽어올 수 있습니다.
  • 그러나 세션은 오직 서버에만 저장되기 때문에 중요한 데이터를 저장하기에 좋습니다.
  • 세션을 사용하는 또 다른 이유는 웹 브라우저가 쿠키를 지원하지 않거나 강제로 사용자가 쿠키를 차단한 경우에도 사용할 수 있다는 점입니다.
  • 세션은 여러 서버에서 공유할 수 없는 단점이 있습니다. 그러나 쿠키는 도메인을 이용해 쿠키를 여러 도메 인에서 공유할 수 있기 때문에 Naver, Daum과 같은 포털사이트들은 쿠키에 로그인 방식을 저장하는 것을 선호합니다

application 기본 객체

특정 웹 애플리케이션에 포함된 모든 JSP페이지는 하나의 application 기본 객체를 공유합니다

application 객체는 웹 애플리케이션 전반에 걸쳐서 사용되는 정보를 담고 있습니다.

서버 동작시 applicatino객체 생성되고 ,서버 내려가면 application 객체 종료

서버 내 프로젝트 어디든 사용할 수 있다 (폴더 경로에 관계 없음) : 서버 프로그램 전역에서 사용 가능 .( 브라우저 꺼져도 관계 없다, 즉 서버만 종료되지 않으면 됨)

예외 페이지

  • 예외 상황이 발생했을 경우 웹 컨테이너(톰캣)에서 제공되는 기본적인 예외 페이지가 보여집니다
  • 개발 과정에서는 이러한 페이지를 보고 어떤 에러가 발생했는지 알 수 있기 때문에 오류를 수정하는데 도움이 됩니다
  • 그러나 사용자에게 상용 서비스를 제공하고 있는데,이러한 딱딱한 페이지가 보여진다면 사용자로 하여금 불쾌감을 일으키고 ,해당 사이트에 대한 신뢰도 하락
  • 코드의 일부 노출 되어 보안 측면에 좋지 않음
  • 개발자가 따로 만들어 둔 에러 페이지로 유도하여 사용자에게 친숙한 페이지를 보여줘야 된다.
  1.  

에러 처리 방법

  1. try { } ~catch( ) { }
  2. 에러를 처리할 페이지를 따로 지정하기
    1. jSP는 실행 도중 예외를 발생할 때 톰캣 기본 에러화면 대신 개발자가 지정한JSP파일 페이지를 보여줄 수 있는 기능을 제공
    2. 에러가 발생하면 보여줄 JSP페이지는 페이지 지시자(directive)의 errorPage속성을 사용하여 지정합니다. <%@ page errorpage=”보낼 페이지 주소 “ %> , 받는 페이지 :<%@ page isErrorPage=”true” %>
  3. 응답 상태 코드별로 에러 페이지 지정하기
    1. JSP는 에러 코드별로 사용할 에러 페이지를 web.xml파일 수정을 통해 지정할 수 있습니다.
    2. 이렇게 지정한 에러페이지는 일반 JSP파일과 동일하게 작성하면 됩니다

에러 페이지의 우선순위

에러 페이지를 여러 방법으로 지정한 경우 다음의 우선순위에 따른 사용할 에러 페이지를 선택합니다(에러 페이지 처리가 중복으로 작성하여도 우선순위가 적용)

  1. 페이지 지시자 태그의 errorPage 속성에 지정한 페이지
  2. web.xml에 지정한 에러 타입(자바 에러 종류)에 따른 페이지
  3. web.xml에 지정한 응답 상태 코드(400,500 ...)에 따른 페이지
  4. 위 3항목에 해당하지 않을 경우 톰캣이 제공하는 에러 페이지

MVC 패턴에서의 Model

  1. DAO 클래스(Data Access Object)
    1. 데이터 베이스에 접속해서 데이터의 추가 ,삭제 ,수정 등의 작업을 하는 클래스
    2. JSP,Servlet에서 위의 로직을 함께 기술할 수 있지만 코드의 모듈화를 위해 별도의 DAO클래스 만들어 사용
    3. 보통 한 개의 테이블마다 한 개의 DAO 클래스를 작성
    4. DAO 클래스는 테이블로부터 데이터를 읽어와 자바 객체로 변환하거나 자바 객체의 값을 테이블에 저장
    5. DAO를 구현하면 테이블의 컬럼과 매핑되는 값을갖는 자바빈 클래스를 항상 작성해야 한다. 이 자바빈 클래스를 VO클래스라 부른다.
  2. VO 클래스(Value Object) / DTO 클래스(Data Transfer Object)
  • DAO 클래스를 이용하여 데이터베이스에 데이터를 관리할 때 데이터를 일반적인 변수에 할당하여 작업할 수도 있지만 ,별도의 VO클래스를 작성하여 데이터베이스와 관련된 변수들의 모음 역할을 한다
  • VO클래스는 자바빈 클래스로 생성합니다.

'수업_정리' 카테고리의 다른 글

2022_05_16_JSP_7일  (0) 2022.05.16
2022_05_13_JSP_6일  (0) 2022.05.13
2022_5_11_JSP_4일  (0) 2022.05.11
2022_05_10_jsp_3일  (0) 2022.05.10
2022_05_09_JSP_2일  (0) 2022.05.09