Maven项目- Servlet的抽取和优化 java.lang.NoSuchMethodException 的解决方法
2024-08-31 11:26:51
优化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就好了。
最新文章
- java 字符串操作和日期操作
- nginx相关的一些记录
- 完成端口(Completion Port)详解(转)
- java基础知识回顾之java Socket学习(一)--UDP协议编程
- 关于Linux的windows目录的挂载
- Xshell异常断开
- php 解决大流量网站访问量问题
- 3DS MAX 导出FBX到Unity3D设置
- spring读取properties文件
- sealed 密封类,不能被其他类继承,但可以继承其他类
- 插头DP题目泛做(为了对应WYD的课件)
- hdu1881 毕业bg(深搜索dfs)
- PL/SQL DEVELOPER 导出表数据
- nyoj_471:好多的树(容斥原理)
- log4j不生成日志文件的问题
- 关于联想笔记本ThinkPad E470 没有外音 插耳机却有声音的解决办法
- eclipse竖向选择快捷键
- Kafka 2.1.0压缩算法性能测试
- H5活动页面与APP交互规则
- excel冻结窗格