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값에 입력한 년, 월, 일이 들어간다.

 

+ Recent posts