package ex02;
// B 개발자가 만든 것
public class UserController {
public void login(int n1, String s1) {
System.out.println("login 호출 됨");
}
public void join() {
System.out.println("join 호출 됨");
}
public void logout() {
System.out.println("logout 호출 됨");
}
}
package ex02;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
// A 개발자가 만든 것
public class App {
public static void main(String[] args) {
String path = "/login";
Method[] methods = UserController.class.getDeclaredMethods();
for (Method method : methods) {
System.out.println(method.getName());
if (method.getName().equals("login")) {
int paramCount = method.getParameterCount();
System.out.println(paramCount);
Parameter[] params = method.getParameters();
for (Parameter param : params) {
System.out.println(param.getName());
System.out.println(param.getType());
}
}
}
}
}

Annotation anno = method.getDeclaredAnnotation(RequestMapping.class);
RequestMapping rm = (RequestMapping) anno;
RequestMapping
어노테이션을 찾아서 anno
에 넣고 그걸
RequestMapping
타입으로 다운캐스팅한 것Share article