关于getMethod()方法

getMethod方法要注意的地方:

类对象.getMethod(mName,HttpServletRequest.class,HttpServletResponse.class);

第一个参数是mName方法名称

第二个参数是“方法参数的类对象”//这个就是为什么他是.class的原因,为什么参数是类对象?因为这个是Java规定的

举个例子

   这是一个抽取出的通用的servlet(页面请求经过的第一个servlet,所有页面请求必须经过的一个servlet, baseservlet)

protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        try {

            //1.获取方法名称
            String mName = request.getParameter("method");
           
            //2.获取方法对象
            Method method = this.getClass().getMethod(mName,HttpServletRequest.class,HttpServletResponse.class);
            
            //3.让方法执行,接受返回值
            String path = (String) method.invoke(this, request,response);
            
            //4.判断返回值是否为空,若不为空,统一处理请求转发
            if(null != path) {
                request.getRequestDispatcher(path).forward(request, response);
            }
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException();
        }
    }

三,这是一个具体执行某类操作的servlet(这里是执行用户注册的servlet,页面请求经过的第二个servlet,userservlet)

public String registUI(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        return "/jsp/register.jsp";

     }


你可能感兴趣的:(关于getMethod()方法)