쌍용교육센터에서 공부한 내용을 정리하며 기록하는 글이고 주관적인 생각이 들어갈 수 있습니다.
잘못된 내용이나 피드백 및 생각 공유는 언제든 환영입니다.
댓글로 남겨주시면 확인 후 수정하겠습니다.
내용에 대한 소스 코드는 https://github.com/2jaehoon/ServletTest에 올려두었습니다.
web parameter 받기
- HTML Form Control이 "submit" 타입의 버튼일 경우에
web browser에 키입력을 받을 수 있는 HTML Form Control이 하나인 경우
엔터를 쳤을 때 유효성검증이 실패하더라도 전송된다.
페이지 이동
- forward, redirect
* forward
- 데이터 처리와 디자인을 분리하여 작업할 때 사용
- RequestDispatcher 객체를 사용하여 페이지를 이동
- 데이터 처리 결과는 scope 객체( request... )에 저장하여 View 페이지로 전달
- JSP는 속도가 느리고, 디자인이 쉬움
- Servlet은 속도가 빠르고, 디자인이 어려움
* redirect
- 비정상적인 요청이 발생했을 때 페이지를 이동
- 웹 브라우저가 응답받은 페이지를 자동 재 요청한다.
response.sendRedirect("이동페이지 URL"); // 사용법
관계 유지
- session, cookie
* session
- 구현 인터페이스 : HttpSession
- 접속자의 정보를 서버 측 메모리에 저장
모든 데이터 저장 가능하지만
DB에서 조회된 많은 양의 데이터는 저장하지 않는다.
연관성 있는 개인 정보는 저장하지 않는다.
사용자를 식별하며 여러 페이지에서 사용될 값을 저장한다.
- 접속자 브라우저에 아이디를 설정하고 접속자 브라우저를 식별한다.
- interval : 접속자가 일정시간 내에 다시 요청이 오지 않으면 연결 종료로 간주하여
접속자 세션을 삭제한다.
- JSP에서는 내장 객체로 제공한다.
- 값 설정
// 1. 세션 얻기
HttpSession session=request.getSession();
// 2. interval 설정 ( web.xml( DD )에서 할 수도 있다. )
// 한 번만 설정하면 모든 페이지에서 동일하게 적용된다.
session.setMaxInactiveInterval( 초 ); // 초*분*시*일
// 3. 값 할당
session.setAttribute("이름", 값);
- 값 얻기
변수타입 변수명=( 변수타입 casting )session.getAttribute("이름");
- 값 삭제
session.removeAttribute("이름");
- 세션 무효화
현재 페이지에서만 삭제된다.
다른 페이지를 요청하면 세션이 없으므로 서버는 새로운 접속자라고
판단하게 세션 키를 생성하는 작업을 수행한다.
session.invalidate();
'성장 일기 > 쌍용교육센터' 카테고리의 다른 글
0429/MVC 패턴 (0) | 2023.05.02 |
---|---|
0428/Cookie, Servlet DD 설정 (0) | 2023.05.02 |
0426/XML 파싱, Serlvet (0) | 2023.05.01 |
0425/JDOM Parser (0) | 2023.04.25 |
0421/XML (0) | 2023.04.25 |