• Servlet使用反射机制


    传统servlet存在的问题

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

    解决方案

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

    实现代码

    • 1.使用if语句判断的方法
      • 前端请求(假设有四个请求)
        img
      • 写一个Servlet,在service方法中进行参数判断,并调用具体方法(注:将请求转发的内容也写在这里,统一转发
        img
      • 具体的业务方法(注:方法返回一个字符串作为请求转发的路径
        img
    • 2.if判断实现存在的问题
      • if结构太长,新的请求仍然要修改此处代码
    • 3.使用反射机制进行改进
      img
      最后将这个service方法单独写入一个类中,此后对于不同模块的servlet都继承这个类,然后只需要写对应的业务逻辑代码即可。
  • 相关阅读:
    @@IDENTITY 存储过程
    ASP.NET的Cookie和Session
    数据格式设置表达式
    DataTable类(MSDN)
    用静态变量代替appliction
    C cgi url 编码解码问题
    C#视频头操作
    c#网页抓取
    c语言字符串分隔
    CGI c 上传文件
  • 原文地址:https://www.cnblogs.com/mujinjia/p/11207438.html
Copyright © 2020-2023  润新知