form 태그가 나오고 login을 할 경우 Action 태그가 실행된다.
포워드 기능
하나의 서블릿에서 다른 서블릿이나 JSP와 연동하는 방법
포워드 기능이 사용되는 용도
요청(request)에 대한 추가 작업을 다른 서블릿에게 수행하게함
요청(request)에 포함된 정보를 다른 서블릿이나 JSP와 공유함
요청(request)에 정보를 포함시켜 다른 서블릿에 전달할 수 있음
모델2 개발 시 서블릿에서 JSP로 데이터를 전달하는데 사용됨
Servlet이 정보를 받아서 처리 후
JSP에게 보낸 후 JSP에서 결과화면을 보여준다
- ridirect방법 (서블릿의 요청이 클라리언트의 「웹 브라우저」를 다시 거쳐 요청되는 방식)
HttpServletResponse 객체의 sendRedirect()메소드를 이용합니다.
웹 브라우저에 재요청하는 방식
형식 : sendRedirect("포워드할 서블릿 또는 JSP");
- Refresh방법
HttpServletResponse 객체의 addHeader()메소드를 이용합니다.
웹 브라우저에 재요청하는 방식
형식 : reponse.addHeader("Refresh",경과시간(초);url=요청할 서블릿 또는 JSP");
- location방법
자바스크립트 location 객체의 href 속성을 이용합니다.
자바스크립트 브라우저에 재요청하는 방식
형식 : location.href='요청할 서블릿 또는 JSP';
- dispatch방법(클라이언트의 브라우저를 거치지않고 서버에서 포워딩이 진행)
*공유할 떄 사용된다.
일반적으로 포워딩 기능을 자칭합니다.
서블릿이 직접 요청하는 방법
RequstDispatcher 클래스의 forward()메소드를 이용합니다.
형식 : RequstDispatcher dis = request.getRequestDispatcher("포워드할 서블릿 또는 JSP");
dis.forward(request,response);
서블릿에서 ?를 붙이면 값을 보내는 역활로 사용할 수 있다.
?는 --> request.getParameter(); 동일하다.
웹은 값을 전달할 떄 주소창을 통해 전달한다.
예시 : ("second?name=jsp");
바인딩 (자원(데이터)은 프로그램 실행 시 서블릿이나 JSP에 공유하여 사용한다.)
(저장하는 곳)set -> get(받는 곳)
setAttribute(String name,Object obj)
- 지원(데이터)을 각 객체에 바인딩 합니다.
getAttribute(String name)
- 각 객체에 바인딩된 자원(데이터)을 name으로 가져옵니다.
removeAttribute(String name)
- 각 객체에 바인딩된 자원(데이터)을 name으로 제거합니다.