java通过反射实现HttpServlet
来源:互联网 发布:淘宝买啥弓箭好 编辑:程序博客网 时间:2024/04/30 16:38
jsp第一次访问服务器时被编译成servlet,然后通过servlet去进行操作。我们通常去继承HttpServlet,然后实现doGet()和doPost()方法.
java的反射原理其实就是先创建一个实例,然后给它的属性逐一赋值,再把方法绑定到其所属方法内。
所以我们利用反射可以拿到一个类的方法而无需关心其他属性参数,用一个新的servlet继承了这个反射Servlet之后只需要把方法名与http请求的函数名相同即可调用该方法。
详见代码注释。
public class CommonServlet extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {// 解决乱码问题request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");try {
//获得要反射的类模板Class<? extends CommonServlet> clazz = this.getClass();// 获得函数String method = request.getParameter("method");// 获得方反射方法Method method2 = clazz.getMethod(method, HttpServletRequest.class, HttpServletResponse.class);// 调用方法,获得目标路径Object path = method2.invoke(this, request, response);// 调用requset的转发方法,与反射无关if (path != null)request.getRequestDispatcher(path.toString()).forward(request, response);} catch (Exception e) {e.printStackTrace();}}protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doGet(request, response);}}
阅读全文
0 0
- java通过反射实现HttpServlet
- Java通过反射实现方法调用
- java通过反射实现数据库的编写
- 通过java反射实现静态变量替换
- Java通过反射实现简单对象的拷贝
- 通过java反射实现对javabean生成各种sql语句
- Java中通过dom4j读取配置文件实现抽象工厂+反射
- Java中通过dom4j读取配置文件实现抽象工厂+反射
- Java中通过dom4j读取配置文件实现抽象工厂+反射
- 练习:通过解析xml和java反射机制实现IoC
- 通过Java的反射机制实现对象的拷贝
- 通过Java反射机制实现POLO类的设置值
- 通过ajax调用HttpServlet来实现前后端数据交互
- Java-HttpServlet
- JAVA--HttpServlet
- java反射(5)通过反射拷贝对象
- 通过Java反射调用方法
- 通过Java反射调用方法
- TSP问题及蚁群算法理解与实现
- 代理模式
- 用SQL profiler工具抓指定表名的动态
- Y
- [Tensor] tf.nn.conv2d函数中的padding参数
- java通过反射实现HttpServlet
- intellij idea编辑器里面的字母有的隐形了是为什么
- 超级楼梯(斐波那契数列应用)
- Ubuntu下使用root账号登录
- maya(学习笔记)之骨骼中关节的轴向确定方法
- Springmvc+Spring+Hibernate中@Valid的使用
- 【java学习】修饰符
- 图形用户界面
- N-Gram模型入门