CodeIgniter에서 URI example.com/index.php/blog/showitem/253
으로 갈 때 제어기 blog
을로드하고 showitem(253)
메소드를 실행합니다.가변 개수의 인자를 가진 리플렉션을 통한 메소드 호출하기
Reflection in Java에서 이와 비슷한 기능을 사용할 수 있습니까? 예를 들어, 올바른 방법으로 올바른 컨트롤러를 초기화하는 다양한 방법의 인수를 사용하는 loadController(String controllerName, String method, Objects args...)
메서드가 있습니다.
나는 문자열에서 클래스를 초기화하고 메소드를 호출 할 수 있다는 것을 알고 있지만 가변 인수에 걸려있다. 방법, 예 경우
switchController("NewsController", "showOne", 124);
이 가능하고, :
public static void switchController(String controllerName, String methodName, Object ... args)
{
try {
Class controller = Class.forName("director.controllers." + controllerName);
Method method = controller.getDeclaredMethod(methodName, Object[].class);
method.invoke(controller.newInstance(), args);
내가 원하는 것은 내가 할 수있는이 같은 showOne(int id)
방법으로 NewsController
를로드하는 것입니다 : 이것은 내가 지금 가지고있는 무엇인가? 방법
시도해 보셨습니까? 어떻게 된 거예요? –
메소드를 호출 할 수 있지만 가변 인수 만 사용할 수 있습니다. 내가 원한 나의 편집 된 예를 보아라. – Bas