1. MethodCall2 실습
https://github.com/castello/spring_basic/blob/main/ch2/MethodCall2.java에서 MethodCall2 가져오기.
Class.forName을 사용해서 "com.fastcampus.ch2.YoilTellerMVC"의 객체를 생성한다.
생성한 객체의 main메서드 정보를 가져온다. 이름이 main인 메서드가 오버로드 되어있을 수 있으므로 변수를 모두 적어줘야 한다.
암튼 Model생성해야 한다.
String viewName = (String)main.invoke(obj, new Object[] { 2021, 10, 1, model });는 invoke에서 obj라는 객체에 main 메서드를 호출한다. Object[] { 2021, 10, 1, model } -> Object 배열은 매개변수 2021, 10, 1, model의 개수가 달라질 수 있기 때문에 배열로 받아야 한다. 따라서 객체 배열을 생성하고 값을 줘야한다.
반환값이 "viewName"이고 render 호출하면 Model에 담은 것을 viewName으로 보여준다. 이번에는 txt파일이 아니라 jsp 파일을 이용할 것이다.
2. MethodCall3 실습
Object[ ] argArr = new Object[main.getParameterCount()]; 이 부분은 객체배열을 하드코딩 하지 않고 동적으로 구성한다. 동적으로 구성한다는 말은 요청한 값을 갖고 객체 배열을 생성한다는 것이다.
3. MyDispatcherServlet 실습(MethodCall3 원격버전)
26 line의 getParameterMap( );에 의해서 key, value값에 입력한 년, 월, 일이 들어간다.
'스프링의 정석 > Ch. 02 Spring MVC' 카테고리의 다른 글
14. 서블릿과 JSP (2) (0) | 2023.07.10 |
---|---|
13. 서블릿과 JSP (1) (0) | 2023.07.09 |
11. 관심사의 분리와 MVC패턴 - 원리(1) (0) | 2023.07.06 |
ch2_10. 관심사의 분리와 MVC패턴 - 실습(2) (0) | 2023.07.05 |
ch2_10. 관심사의 분리와 MVC패턴 - 실습(1) (0) | 2023.04.12 |