JAVA

바인딩

정숙씨의 쏠쏠한 코딩 2021. 8. 4. 22:31
  • 서블릿에서 다른 서블릿이나 JSP로 대량의 데이터를 전달 할때는 바인딩(binding)기능을 사용한다.
  • HttpServletRequest, HttpSession, ServletContext 객체에서 사용된다.
  • Model2, 스트럿츠, Spring framework로 구현할시 바인딩 기능을 사용하여 데이터를 전달하고 공유한다.
  • setAttribute(String name, Object obj) -> 자원(데이터)를 각 객체에 바인딩한다.
  • getAttribute(String name) -> 각 객체에 바인딩된 자원(데이터)을 name으로 가져온다.
  • removeAttribute(String name) -> 각 객체에 바인딩된 자원(데이터)을 name으로 제거한다.
  • 사용 예시
    FirstServlet.java
     
  • request 객체 내 setAttribute 메서드를 사용하여 address 요청값을 저장함
  •  FirstServlet -> SecondServlet으로 RequestDispatcher를 사용하여 redirect 시킴
    • sendRedirect를 사용 할 경우 FirstServlet -> SecondServle으로 요청시 Attribute값을 받아오지 못함.

SecondServlet.java

  • request 객체 내 getAttribute() 메서드 통한 저장된 address 요청값을 가져옴.
  • (String) 타입으로 형변환 진행
  • PrintWriter 객체 통한 address 저장값 출력 진행