JSP - Foward

2023. 8. 4. 11:10·JSP
728x90
반응형
SMALL
redirect를 아직 안보고 오신분은 먼저 redirect를 읽고 와서 이 글을 읽어주길 바란다.
둘의 차이를 알아야 적절하게 사용할 수 있기 때문이다.
https://sunro1994.tistory.com/139

🟰Foward

☀️서버에서 임의로 응답할 처리할 페이지를 변경하는 기술
☀️클라이언트는 1회만 요청하면 서버에서 다른페이지에 요청과 응답을 넘겨준다.
☀️리다이렉트는 요청을 2회하지만 리다이렉트는 1회!이다.
☀️요청과 응답을 넘겨받은 페이지에서는 기존 request를 그대로 사용할 수 있다.
☀️클라이언트가 주소를 변경하는 것이 아니라서 주소창이 바뀌지 않는다.
☀️서버가 보유한 자원(root아래 자원)으로 포워딩하기 때문에, 다른 서버(naver, daum, google등)으로 이동이 불가능하다.

⏬예시코드
<%
		if(request.getMethod().equals("POST")) {
			String url = request.getParameter("url");
			
			request.setCharacterEncoding("UTF-8");
			request.setAttribute("test2", "포워드할 내용");
			
			RequestDispatcher rd = request.getRequestDispatcher(url);
			rd.forward(request, response);
			//request와 response를 url에 지정된 페이지에 넘겨준다.
		}
	%>​

코드를 해석하자면 이렇다.
1. 만약 POST방식으로 요청할 경우
2. String 타입의 url에 파라미터로 전달받은 url을 참조하도록 하고
3. request.setCharacterEncoding("UTF-8") 을 통해 한글이 깨지지 않도록 인코딩해준다.
4. RequestDispatcher 객체인 rd에 url 변수를 받아오고
5. rd.fowrad를 통해 해당 url로 request객체가 갖고있는 데이터와 함께 페이지를 이동하도록 해준다.


다음장에서는 내가 했던 코드를 갖고 redirect와 foward를 활용하는 예시코드들 위주로 포스팅을 해보겠다.

728x90
반응형
SMALL

'JSP' 카테고리의 다른 글

JSP EL태그 종류(예시 있음)  (0) 2023.08.06
JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)  (0) 2023.08.05
JSP - Redirect  (0) 2023.08.04
JSP 내장 객체 유효 범위 (pageContext,Request,Session,Application), Attribute  (0) 2023.08.03
JSP - method (GET, POST)  (0) 2023.08.02
'JSP' 카테고리의 다른 글
  • JSP EL태그 종류(예시 있음)
  • JSP액션태그 javaBean, SetProperty, GetProperty(예시 포함)
  • JSP - Redirect
  • JSP 내장 객체 유효 범위 (pageContext,Request,Session,Application), Attribute
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (325)
      • 면접 준비 (22)
        • OS (6)
        • Spring Security (0)
        • Java (3)
        • DB (11)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      java
      JS
      HTML
      spring redis
      CSS
      Springframework
      레디스
      리눅스마스터2급
      자바기초
      redis
      jsp request
      Spring
      자바 면접
      자바 반복문
      자바스크립트
      JSP
      리눅스
      JavaScript
      스프링프레임워크
      프로그래머스
      Til
      자바
      자바 면접질문
      리눅스마스터2급정리
      자바 알고리즘
      springsecurity
      백준
      redis 채팅
      jsp기초
      Spring Data Redis
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    JSP - Foward

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.