inblog logo
|
harimmon
    심화 과정

    [심화] 11. Reflection 예제

    백하림's avatar
    백하림
    Jul 25, 2025
    [심화] 11. Reflection 예제
    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()); } } } } }
    notion image
    🔥

    getDeclaredAnnotation()이란?

    getDeclaredAnnotation(어노테이션) →
    "메서드 위에 붙어있는 이 어노테이션만 찾아줘!"
    🔥
    Annotation anno = method.getDeclaredAnnotation(RequestMapping.class); RequestMapping rm = (RequestMapping) anno;
    RequestMapping 어노테이션을 찾아서 anno 에 넣고 그걸 RequestMapping 타입으로 다운캐스팅한 것
    Share article

    harimmon

    RSS·Powered by Inblog