zhy985619 2011-05-12 16:11
浏览 210
已采纳

关于doGet和doPost

问题是这样的:
我用myEclipse自动生成一个servlet,什么代码也没有写!我只是想测试一下tomcat是怎么调用doGet和doPost的,前提,我没有生成任何表单!!
情况一:代码没做任何修改,运行tomcat,浏览器显示正常!
情况二:注释整个doPost方法,浏览器显示正常!
情况三:注释整个doGet方法,浏览器显示错误!!!!!(为什么tomcat不能单独调用doPost方法)
情况四:doGet和doPost互相调用,浏览器显示正常!

哪位大侠能解释以上述出现的情况,主要是第三个!!!(没有表单提交)
求详解,不能复制网上的答案!!!

积分全给!!!

  • 写回答

10条回答 默认 最新

  • fmjsjx 2011-05-12 16:43
    关注

    [quote]fmjsjx 写道
    从浏览器键入URL时,浏览器会通过HTTP的GET请求连接服务器,到servlet时就会调用doGet方法,这个不是说默认调用doGet方法,而是浏览器的连接请求是GET请求。当通过某个页面的表单请求时,就要看表单的请求类型是POST还是GET了(其实还有其他的HTTP请求类型,不过现在基本都弃之不用了)。

    高人,能否用源代码说明你的答案!! [/quote]
    ……
    我无语了,看仔细了:
    Servlet的实现没有默认方法这一说,HTTP请求是GET请求就调用doGet(),是POST就调用doPost()。
    从浏览器键入URL来访问网站的请求都是GET请求,只有HTML一面的表单提交是POST时才会是POST请求,这和源码没有任何关系,而是HTTP协议以及HTML规范的要求!
    你键入URL来访问网站当然是GET请求,自然要调用doGet()。
    ……

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(9条)

报告相同问题?

悬赏问题

  • ¥20 MIT控制器能控制不稳定系统吗
  • ¥15 公司代码X对业务伙伴X无效,处理方法?
  • ¥15 微信内链接跳转到浏览器打开怎么实现
  • ¥15 三角波可以直接加施密特电路整形到矩形波吗实物
  • ¥15 html,php,在使用html请求php文件时发生了错误,无法请求到php文件读取数据库并用javascript进行数据显示,刷新
  • ¥15 touchsocket udp组播
  • ¥20 MAC怎么安装Silverlight 插件?以及安装了怎么启用
  • ¥15 VS2012中查询语句无法填入解析,数值传不进去
  • ¥15 gis系统开发出现命名空间“ESRI.ArcGIS”中不存在类型或命名空间名“Analyst3D”报错
  • ¥15 怎么让ai定时给我发信息 c#或者python