优化servlet,减少servlet的数量,便于开发与维护。现在是一个功能一个Servlet,将其优化为一个模块一个Servlet,BaseServlet的抽取和优化,相当于在数据库中一张表对应一个Servlet,在Servlet中提供不同的方法,完成用户的请求。
异常显示:没有这样的方法。
问题所在:方法的声明是protected受保护的,
解决方法:
1. 不好的方式: 声明为protected的方法要想被访问到,获取方法的时候我们要忽略访问修饰符,用
Method method = this.getClass().getDeclaredMethod(methodName, HttpServletRequest.class, HttpServletResponse.class);
忽略访问权限修饰符获取方法,然后暴力反射method.setAccessible(true);
这样做包括私有的方法都可以获取到,并且可以执行,但是这样的做法不好,因为在servlet里面一些私有的方法并不像被别人
访问到。
2. 最好的方式: 把这些方法的权限修饰符修改成public就好了。