Servlet使用反射机制

传统servlet存在的问题

  • 每一个不同的请求都要写Servlet,导致整个项目servlet过多,不易维护

解决方案

  • 同一个模块只写一个Servlet,然后每一个请求传一个参数,后台根据参数取调用不同的业务方法

实现代码

  • 1.使用if语句判断的方法
    • 前端请求(假设有四个请求)
      img
    • 写一个Servlet,在service方法中进行参数判断,并调用具体方法(注:将请求转发的内容也写在这里,统一转发
      img
    • 具体的业务方法(注:方法返回一个字符串作为请求转发的路径
      img
  • 2.if判断实现存在的问题
    • if结构太长,新的请求仍然要修改此处代码
  • 3.使用反射机制进行改进
    img
    最后将这个service方法单独写入一个类中,此后对于不同模块的servlet都继承这个类,然后只需要写对应的业务逻辑代码即可。
posted @ 2019-07-18 15:05  沐堇  阅读(445)  评论(0编辑  收藏  举报