service方法、doGet方法、doPost方法的区别和一些常见错误 Servlet的生命周期

1、Service方法和doGet方法和doPost方法的区别

* Service方法:
   可以处理get/post方式的请求,如果servlet中有Service方法,会优先调用service方法对请求进行处理。
* doGet方法:
   处理get方式的请求 如果没有重写此方法,会调用父类,父类会返回405错误
* doPost方法:
   处理post方式的请求 如果没有重写此方法,会调用父类,父类会返回405错误
* 注意:
  * 如果在覆写的service方法中调用了父类的service方法(super.service(arg0, arg1)),
  * 则service方法处理完后,会再次根据请求方式响应的doGet和doPost方法执行。所以,一般情况下
  * 我们是不在覆写的service中调用父类的service方法的,避免出现405错误。

2、Servlet的常见错误:

  * 404错误:资源未找到
    原因一:在请求地址中的servlet的别名书写错误。
    原因二:虚拟项目名称拼写错误
  * 500错误:内部服务器错误
    * 错误一:
      java.lang.ClassNotFoundException: com.bjsxt.servlet.ServletMothod
      解决:
        在web.xml中校验servlet类的全限定路径是否拼写错误。
    * 错误二:
      因为service方法体的代码执行错误导致
      解决:
        根据错误提示对service方法体中的代码进行错误更改。
  * 405错误:请求方式不支持
      原因:
        请求方式和servlet中的方法不匹配所造成的。
      解决:
        尽量使用service方法进行请求处理,并且不要再service方法中调用父类的service。

3、Servlet的生命周期:

  1、从第一次调用到服务器关闭。
  2、如果Servlet在web.xml中配置了load-on-startup,生命周期为从服务器启动到服务器关闭
  * 注意:
    * init方法是对Servlet进行初始化的一个方法,会在Servlet第一次加载进行存储时执行
    * destory方法是在servlet被销毁时执行,也就服务器关闭时。

原文地址:https://www.cnblogs.com/kilig/p/12215173.html

时间: 2024-10-12 19:00:15

service方法、doGet方法、doPost方法的区别和一些常见错误 Servlet的生命周期的相关文章

在servlet中出现service()、doGet()和doPost()方法时的执行问题

在建立一个继承了HttpServlet类并重写了该类的service().doPost()和doGet()方法时,java会如何执行?其实若是该三个方法都在存在的情况下,java只会执行service()方法,而其他的两种方法不会被执行.若是没有service() 方法,则是根据jsp传入方式选择对应的方法.比如说,若是jsp是以Post方式传入数据,则是调用doPost()方法处理数据.但是一般上在建立一个继承HttpServlet类时都会重写doPost()和doGet()方法,而且会在其中

Servlet的Service方法和doget 和 dopost方法的区别,常见的错误解析

package com.sxt.in; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Service方法和doget 和 dopost方

Servlet的doGet与doPost方法的区别与使用

Servlet的doGet与doPost方法的区别与使用 2016年07月07日 13:05:13 阅读数:10222 一,区别 在使用表单提交数据到服务器的时候有两张方式可共选择,一个是post一个是get.可在<form>中的method属性中指定提交的方式.如:<form action="inputForm"method="get">,如果不指定method属性,则会默认该属性为"get"方式. Get和post都能

Servlet之doGet()和doPost()方法区别和联系【入门版,初学者必看】

Servlet 中 重写的doGet(),doPost()方法,分别代表get请求和post请求 其实不管get请求,还是post请求,处理方式类似 所以一般习惯在doGet()中调用一下doPost ()或者 在doPost()里面调用doGet() 版权声明:本文为博主原创文章,未经博主允许不得转载.

Java Web -- Servlet(5) 开发Servlet的三种方法、配置Servlet详解、Servlet的生命周期(2)

三.Servlet的生命周期 一个Java servlet具有一个生命周期,这个生命周期定义了一个Servlet如何被载入并被初始化,如何接收请求并作出对请求的响应,如何被从服务中清除.Servlet的生命周期被javax.servlet.Servlet这个接口所定义. 所有的Java Servlet都会直接地或间接地执行javax.servlet.Servlet接口,这样它才能在一个Servlet引擎中运行. Servlet引擎是Web 服务器按照Java Servlet API定制的扩展.S

4 service() 与 doGet() 、doPost()

在Servlet中,对于客户端发来的请求我们要做出相应的相应,一共有三种方式:service() doGet() doPost(),它们使用的方法如下: service()方法: 可以处理get/post方式的请求,如果servlet中有service方法,则会优先调用service方法对请求做处理. doGet()方法: 处理get方式的请求 doPost()方法: 处理Post方式的请求 注意: 如果在重写的service方法中调用了父类的service方法(super.service(ar

Java Web -- Servlet(4) 开发Servlet的三种方法、配置Servlet详解、Servlet的生命周期(1)

一.实现Servlet接口 通过实现Servlet接口来了解Servlet的生命周期 (1)以规范的形式创建一个web应用(即在webapps目录下创建一个web应用) 创建web应用 (2)classes目录下创建一个.java(该java文件为实现Servlet接口) 创建文件夹MyFirstServlet.java 代码如下: package com.focus; import javax.servlet.*; import javax.servlet.http.*; import jav

Servlet 的生命周期,Servlet 和CGI 的区别

Servlet 的生命周期:实例化,初始化,提供服务,销毁实例 Web 容器加载Servlet 并将其实例化后,Servlet 生命周期开始,容器运行其init 方法进行Servlet 的初始化,请求到达时运行其service 方法,service方法自动派遣运行与请求对应的doXXX 方法(doGet,doPost)等,当服务器决定将实例销毁的时候调用其destroy 方法. Servlet 和CGI 的区别: 与cgi 的区别在于servlet 处于服务器进程中,它通过多线程方式运行其ser

Servlet是什么?JSP和Servlet的区别。Servlet的生命周期。

Servlet(Server Applet),全称Java Servlet, 是用Java编写的服务器端程序.而这些Sevlet都要实现Servlet这个借口.其主要功能在于交互式地浏览和修改数据,生成动态Web内容.Servlet运行于支持Java的应用服务器中. HttpServlet 重写doGet和doPost方法或者你也可以重写service方法完成对get和post请求的响应. 2.JSP和Servlet的区别 JSP经编译后就变成了“类servlet”. JSP由HTML代码和JS