쌍용교육센터에서 공부한 내용을 정리하며 기록하는 글이고 주관적인 생각이 들어갈 수 있습니다.
잘못된 내용이나 피드백 및 생각 공유는 언제든 환영입니다.
댓글로 남겨주시면 확인 후 수정하겠습니다.
내용에 대한 소스 코드는 https://github.com/2jaehoon/sangyoungjsp에 올려두었습니다.
out
- JspWriter 클래스로 생성된 내장 객체
- scriptlet 안에서 web browser로 출력할 때
out.print("출력할 내용"); //web browser에 출력 후 줄 변경하지 않는다.
out.println("출력할 내용"); //web browser에 출력 후 줄 변경한다.
서버 내 페이지 이동
- forward : request
- redirect : response
response
- 응답 방식 설정, 관계 유지 객체 사용( Cookie설정 ), 페이지 이동
- HttpServletResponse가 데이터형으로 생성된 내장 객체
redirect
- 정상적인 요청이 있을 때 응답되는 페이지에서 비정상적인 요청이 발생했을 때
사용한다. (페이지를 URL을 사용하여 직접 요청)
- 요청 URL을 변경하여 보여줄 때 사용
- response 내장 객체를 사용하여 페이지를 이동한다.
- 이동한 페이지에서 이전페이지에 요청한 값을 사용할 수 없다.
- 접속자 브라우저에 응답된 후 접속자 브라우저에서 자동 재요청을 수행한다.
(URL이 변경된다. - 웹 브라우저는 페이지의 이동을 안다.)
response.sendRedirect("이동할페이지 URL");
* redirect 동작
forward
- 데이터 처리 페이지와 view 페이지를 분리하여 만들 때
( Model2 방식의 개발에서 주로 사용 )
- 요청 시에 페이지 이동
- 웹 브라우저는 페이지 이동을 모른다.
(이전 페이지에 요청 parameter을 이동한 페이지에서 사용할 수 있다.
URL이 변경되지 않는다.)
- scope 객체에 값을 저장하여 이동한 페이지로 값을 보낼 수 있다.
// 1. 이동할 페이지를 설정하여 RequestDispatcher에 할당
// 다른 서버로 보낼 수 없다.
RequestDispatcher rd=request.getRequestDispatcher("URI");
// 2. request scope객체에 값 설정 – 이동할 페이지로 값을 넘겨줄 때
request.setAttribute("이름", 값 );
// 3. 이동
rd.forward( request, response );
Model1 방식의 개발
- 2가지 형태로 개발할 수 있다.
'성장 일기 > 쌍용교육센터' 카테고리의 다른 글
0406/cookie, JSP 액션태그 (0) | 2023.04.06 |
---|---|
0404/forward, session (0) | 2023.04.04 |
0331/Web Parameter, get, post (0) | 2023.04.04 |
0330/지시자, 내장 객체 (0) | 2023.03.30 |
0329/JSP (0) | 2023.03.30 |