【问题标题】:Calling doget on submit type of post and vice versa在提交类型的帖子上调用 doget,反之亦然
【发布时间】:2014-11-28 04:06:34
【问题描述】:

在jsp上提交表单时,我们定义方法类型:-

1.) Get时--->调用servlet的doGet。

2.) Post时--->调用servlet的doPost。

有没有一种彻底的方法可以实现以下场景:-

1.) Get时--->调用servlet的doPost。

2.) Post 时---> servlet 的 doGet 被调用。

在我上次的采访中被问到,我无法回答。 我给出的可能解决方案是在 doGet 方法中调用 doPost 方法,反之亦然,但在这种情况下,调用的方法也是相同的。

【问题讨论】:

    标签: java jsp servlets web


    【解决方案1】:

    一种方法是覆盖HttpServlet.service 方法并根据需要调用这些方法。

    【讨论】:

      【解决方案2】:

      您已经描述了服务方法的默认行为,如HttpServlet Javadoc(已添加重点)中所述

      提供一个抽象类,以创建适合网站的 HTTP servlet 进行子类化。 HttpServlet 的子类必须覆盖至少一种方法,通常是以下方法之一:

      • doGet,如果 servlet 支持 HTTP GET 请求
      • doPost,用于 HTTP POST 请求
      • doPut,用于 HTTP PUT 请求
      • doDelete,用于 HTTP 删除请求
      • initdestroy,用于管理在 servlet 生命周期内持有的资源
      • getServletInfo,servlet 用来提供有关自身的信息

      几乎没有理由重写服务方法。服务通过将标准 HTTP 请求分派给每种 HTTP 请求类型的处理程序方法(上面列出的 doXXX 方法)来处理标准 HTTP 请求。

      对于您的具体示例,您可以覆盖该方法。

      【讨论】:

        猜你喜欢
        • 2019-11-09
        • 2013-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多