中易网

写一个servlet如果不重写service方法那么会调用哪个类的service方法来调用doGet/doPost

答案:2  悬赏:0  
解决时间 2021-01-11 15:00
  • 提问者网友:我一贱你就笑
  • 2021-01-11 01:08
写一个servlet如果不重写service方法那么会调用哪个类的service方法来调用doGet/doPost
最佳答案
  • 二级知识专家网友:轮獄道
  • 2021-01-11 02:05
首先你得搞清楚,service方法是由javax.servlet.Servlet申明,HttpServlet实现的。
HttpServlet不仅实现了service方法,还重写了service方法。
当用户访问你的Servlet时,request和response会通过HttpServlet的service方法判断用户提交的方式,然后交给相应的DoXXX处理。
而一般提交的方式为doGet()或者doPost(),所以我们只需要重写这两个方法就行了。

所以说,那么当一个请求发送过来的时候,会调用HttpServlet的service方法来根据请求的方式不同来调用对应的doGet或者doPost方法进行处理。

如果我们的Servlet重写了service方法而不判断,反而让服务器不能分辨出用户提交的方式。
那样就通通以get方式提交。
全部回答
  • 1楼网友:怙棘
  • 2021-01-11 03:05
你在发送请求时不都需要制定一个action吗,其会去xml中匹配对应的servlet,其就会进去那个class里面,那个类就是请求要连接的类了,默认是会调用这个类里面的doGet方法,如果你知道post发送类型就给调用doPost,也可以自定义调用其它方法。追问估计你没理解我问的意思,我是说,默认写一个servlet的时候是会继承HttpServlet这个类的,但是我不重写其service方法,我只重写doGet和doPost方法,那么系统时会调用哪个类的service方法来调用我重写的doGet或者doPost方法呢?追答不重写除了父类哪还有其它类的追问那你告诉我是哪个类,我没搞清楚,我在父类那里调式了发现没进去service方法,所以说我不知道是怎么回事
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息