일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- ssafy
- Computer Science
- CS기초지식
- w3schools
- 기초프로그래밍
- 데이터베이스 모델링
- 예외처리
- 상속
- CS50
- 알고리즘
- 면접을 위한 CS 전공지식 노트
- java
- 삼성청년SW아카데미
- 관계형 데이터베이스
- ERD
- Compute Science
- 객체지향
- 부스트코스
- 모두를 위한 컴퓨터 과학(CS50)
- CS 기초지식
- WebProgramming
- SW
- Java Programming
- 모두를 위한 컴퓨터 과학
- SSAFY 9기
- til
- exception
- CS 기초
- 이진법
- edwith
- Today
- Total
Joslynn의 하루
MSA Full-Stack 개발자 양성 과정 - JSP 페이지 이동방식, 내장객체 request, response_220930 본문
MSA Full-Stack 개발자 양성 과정 - JSP 페이지 이동방식, 내장객체 request, response_220930
Joslynn 2022. 9. 30. 17:52페이지 이동방식
1) WAS 쪽에서 이동방식
- forward 방식
: 기존의 request, response를 유지하면서 이동하는 방식
: 코딩방식
- 액션태그: <jsp:forward page=""/>
- 메소드: request.getRequestDispatcher("주소").forward(request, response);
- redirect 방식
: 새롭게 request, response를 생성해서 이동하는 방식
: 코딩방식 - 메소드만 제공
: reponse.sendRedirect("주소");
2) client 쪽에서 이동방식
: <a href=""></a>
: submit 전송
: location.href = "주소"
JSP 내장객체
1. request : javax.servlet.http.HttpServlerRequest
: 클라이언트의 요청정보를 서버측에서 사용할때
* String value = request.getParameter(String name) ;
: request로 넘어오는 name에 해당하는 value 값 받기
* request.setCharacterEncoding("euc-kr");
: request로 넘어오는 한글인코딩 변환
* String str [] = request.getParameterValues("hobby");
: name에 해당하는 value 여러개 일때 사용함. (배열로 return 받음)
* Enumeration<String> e = request.getParameterNames();
: request로 넘어오는 name에 대한 정보 가져오기
* String ip = request.getRemoteAddr() ;
: 접속한 클라이언트 ip 가져오기
* Cookie co [] = request.getCookies();
: 접속한 클라이언트에 저장된 쿠키정보(클라이언트정보) 가져오기
: 300개 정도의 용량 제한
2. response : javax.servlet.http.HttpServletResponse
=> 서버가 클라이언트쪽으로 응답처리 할때 사용함.
* response.sendRedirect(String url);
: 클라이언트의 요청페이지를 URL로 이동시킴.
* response.addCookie(Cookie co);
: 클라이언트쪽에 클라이언트의 정보를 저장함.
* response.setContentType(String encoding);
: 클라이언트쪽에 한글인코딩 설정
: 브라우저에 출력되는 페이지에 대한 encoding 설정
(↔request.setCharacterEncoding() 역할 구분)
* response.setStatus(int code) ;//
: 클라이언트쪽에 상태코드 설정
상태코드 200 : 정상 (성공)
400 : request요청이 잘못된경우 (bad request) - frontEnd 단에 넘어오는 값이 유효하지 않을 때
403 : 인증은 했으나 권한이 부족할때 발생코드
404 : FileNotFoundException 잘못된 경로 인경우
405 : 요청방식 잘못된 경우(get방식, post방식 구분못햇을대)
500 : 소스코드 오류.
response.setError(int code);
3. session => HttpSession
: 클라이언트의 정보를 서버측에 저장할때 사용함.
: 저장된 정보는 브라우져 창이 시작 해서 종료 할때까지
저장정보가 유지됨.
(일반적으로 로그인 ~ 로그아웃 )
: 접속된 각각의 클라이언트마다 생성됨.
: 기본 세션의 시간은 30분(1800초)
* session.setAttribute(String name, Object value);
: 세션의 정보를 저장.
* Object value = session.getAttribute(String name);
: 세션의정보가져오기
* session.setMaxInactiveInterval(int interval);
: 세션의 유지되는 시간설정(초단위)
* int interval = session.getMaxInactiveInterval();
: 설정된 세션의 시간 가져옴(초단위)
* String id = session.getId();
: 세션이 생성되면 자동으로 만들어지는 세션아이디
* Enumeration e =session.getAttributeNames();
: 세션에저장된 name 가져오기
* boolean b = session.isNew();
: 현재 브라우져창의 세션이 새로운것인지 판별
(true면 새로운페이지, false 기존페이지)
* session.invalidate();
: 세션의 모든정보를 지운다.
* session.removeAttribute(java.lang.String name);
: 저장된 세션의 정보중 name에 해당하는 정보 삭제
* long time = session.getLastAccessedTime();
=> 마지막 접속시간
* long time = session.getCreationTime();
=> 세션이 시작된 시간.
'MSA Full-Stack 개발자 양성과정 > JSP&Servlet' 카테고리의 다른 글
[Servlet] annotation과 xml 설정 (0) | 2022.10.11 |
---|---|
MSA Full-Stack 개발자 양성 과정 - JSP 표현언어(EL)&JSTL_221006 (0) | 2022.10.06 |
MSA Full-Stack 개발자 양성 과정 - JSP 예외 처리, Servlet 기초_221005 (1) | 2022.10.05 |
MSA Full-Stack 개발자 양성 과정 - JSP 내장객체 session, application / Java AtomicInteger_221004 (1) | 2022.10.04 |
MSA Full-Stack 개발자 양성 과정 - JSP_220929 (0) | 2022.09.29 |