servlet中dopost方法和service方法的区别

解决方案 »

  1.   

    service()是在javax.servlet.Servlet接口中定义的, 在 javax.servlet.GenericServlet 中实现了这个接口, 而 doGet/doPost 则是在 javax.servlet.http.HttpServlet 中实现的, javax.servlet.http.HttpServlet 是 javax.servlet.GenericServlet 的子类. 所有可以这样理解, 其实所有的请求均首先由 service() 进行处理, 而在 javax.servlet.http.HttpServlet 的 service() 方法中, 主要做的事情就是判断请求类型是 Get 还是 Post, 然后调用对应的 doGet/doPost 执行. 
      

  2.   

    dopost()方法是在serivces()方法里面调用的,是根据你请求的表单的method属性决定的
      

  3.   

    serivces()为SERLVET的执行方法,dopost是service()的一种,doget也是一种
    具体调用哪种  就在于你的提交方式
      

  4.   

    serivces()向下分发成doGet()和doPost()
      

  5.   

    简单的来说就是这样
    在Servlet得到请求的时候方法会先走serivces()接着才是doGet()/doPost()
      

  6.   

    先要说Servlet的生命周期啊,Servelt容器接收到客户端请求以后:解析请求-创建Servlet实例-调用init()方法-调用service()方法-输出相应信息-返回相应-调用destory()方法。
    调用service()方法的时候,先返回request的Method,根据Method派发到相应的doXXXX()方法,Method为"POST"时派发到doPost()。
      

  7.   

    service方法里面会调用doPost或者doGet方法,这取决于你的提交方式,不过如果你覆盖了service方法,不管是Post还是Get方式提交都能在service方法里处理
      

  8.   

    在method没有输入请求方式时,一般默认调用doGet()方法!!
    反之,根据请求方式的不同调用不同的doXX()方法;
      

  9.   

    service  方法包括两种方式  doget  dopost  所谓隐式传递 显示传递
      

  10.   

    serivces()方法根据情况调用doGet 或者doPost。
      

  11.   

    建议作者熟悉,servlet的生命周期,工作机制
      

  12.   

    这么回答吧,service()方法相当于一个调度器,由他来决定调用doGet()或doPost()方法,而你(程序员)可以决定service()方法的决定!
      

  13.   

    servlet的生命周期真的还是不太明白啊
      

  14.   

    当你请求一个servlet之前,servlet已经在容器里面了,那么它里面就有个service()方法运行了,当我们请求的时候,它是先调用service()方法,然后service()方法根据你的请求类型,再决定跳转到哪一个具体的方法,是dopost()还是doget()。
      

  15.   

    dopost和doget方法都是在service里调用的把