반응형
●쿠키 - 전달할 데이터를 웹브라우저에 저장했다가 웹서버 쪽으로 되돌려 받는 방법
●세션 - 전달할 데이터를 브라우저가 아닌 웹서버에 저장해 놓고 데이터를 전달하는 방법
●쿠키 입력 - Cookie 클래스의 객체를 만들고 addCookie 메서드를 호출한다.
ex)
Cookie cookie = new Cookie("A", "1"); // A는 임의의 쿠키 이름이고 1은 임의의 쿠키에 저장한 값이다
//둘다 string타입이다.
response.addCookie(cookie);
●쿠키는 html 문서 앞에 쓰는게 좋다.
●쿠키 조회
- 웹브라우저가 웹서버로 url을 보낼때마다 그 url에 포함된 웹서버의 주소에 해당하는 모든 쿠키를 찾아서 웹서버로 보낸다. 쿠키를 받는 일은 getCookies메서드를 이용한다.
ex)
Cookie cookies[] = request.getCookies(); //웹브라우저가 보낸 쿠키를 Cookie배열로 만들어서 리턴한다.
//쿠키없으면 null값을 리턴한다.
●Cookie 배열에서 특정 쿠키를 찾으려면 하나씩 가져다가 비교해서 구한다.
ex)
String name = cookie.getName();
String value = cookie.getValue();
●쿠키 삭제 - 쿠키삭제 기능이 따로 있는게 아니라 쿠키의 남은 수명을 0으로 설정해서 쿠키를 없엔다.
ex)
Cookie cookie = new Cookie("gender", "");
cookie.setMaxAge(0); //setMaxAge메서드를 이용해서 쿠키수명을 설정한다. 숫자는 '초'단위이다.
response.addCookie(cookie);
●쿠키는 따로 수명설정을 안 해주면 웹브라우저가 끝날때 자동으로 지워진다.
●특정 경로명을 갖는 URL로만 전송 - setpath("/~~/ ") 이용한다.
ex)
Cookie cookie = new Cookie("~", "~");
cookie.setPath("/aaa/sub/suba/"); // ()안의 값은 경로이다.
response.addCookie(cookie);
●경로의 시작과 끝은 '/' 써주는게 좋다.
ex)
setPath("/~~/");
●쿠키가 여러 웹서버로 전송되도록 만들 때 setDomain(" .~~") 사용한다.
ex)
Cookie cookie = new Cookie("~", "~");
cookie.setDomain(" .aaa.co.kr"); //도메인 이름은 '.'으로 시작
●세션 - 세션 내장변수 통해 데이터 저장,로드,삭제 한다.
ex)
session.setAttribute("ID", "lee"); //세션 데이터를 저장하는 메서드
String str = (String)session.getAttribute("ID); //세션 데이터를 가져오는 메서드
session.removeAttribute("ID"); //세션 데이터를 삭제하는 메서드
session.invalidate(); //세션을 끝내는 메서드
●jsp페이지에서 세션을 사용할 필요없으면 page지시자에서 session어트리뷰트를 false지정한다.
ex)
<%@ page session = "false" %>
●실무에서 웹프로그래밍 할때는 익셈션 처리가 개발작업의 상당부분을 차지한다.
●웹프로그래밍에서 한페이지에서 예외처리를 하면 복잡해지기 때문에 따로 에러페이지를 만들어서 호출하는 방법이 좋다.
●익셈셕을 발생하는 jsp페이지에서 ge지시자에 Errorpage어트리뷰트를 쓰고 거기에 url경로 지정한다.
ex)
<%@ page errorPage = "error.jsp" %>
●에러 페이지에는 '<%@ page isErrorPage = "true" %>' 써야한다.
●상세 에러 메세지 메서드 - exception.getMessage()
반응형
'프로그래밍 > JSP' 카테고리의 다른 글
jsp 기본 문법 정리4 (0) | 2012.03.12 |
---|---|
jsp 기본 문법 정리3 (0) | 2012.03.12 |
jsp 기본 문법 정리1 (0) | 2012.03.11 |
JSP 프로젝트 시작하기 & DB 연결하기 (0) | 2012.03.10 |
JSP 이클립스 개발 환경 구축(세팅) (0) | 2012.03.10 |
댓글