Qual é a diferença entre GenericServlet e HttpServlet

Índice:

Anonim

o principal diferença entre GenericServlet e HttpServlet é que o GenericServlet é independente de protocolo e pode ser usado com qualquer protocolo, como HTTP, SMTP, FTP e CGI, enquanto HttpServlet é dependente de protocolo e usado apenas com o protocolo

Servlet é uma tecnologia Java que ajuda a desenvolver aplicativos da web escaláveis ​​e robustos. É um componente do lado do servidor independente da plataforma. Além disso, é possível escrever um Servlet usando três métodos: implementando a interface Servlet, estendendo a classe abstrata GenericServlet ou estendendo a classe abstrata HttpServlet. A interface Servlet é a superinterface para GenericServlet e HttpServlet. Ele possui cinco métodos abstratos, e GenericServlet e HttpServlet herdam esses métodos.

GenericServlet,

O que é GenericServlet

GenericServlet é a subclasse imediata da interface Servlet. Isso é; um método herdado da interface Servlet chamado serviço () é um método abstrato em GenericServlet. Os outros quatro métodos herdados da interface Servlet têm implementações em GenericServlet. Um programador que estende a classe GenericServlet deve substituir o método service () e escrever a implementação para ele.

Além disso, GenericServlet é usado com protocolos como SMTP, CGI, FTP, HTTP, etc. Portanto, é independente de protocolo. Em outras palavras, pode ser usado quando a web não foi padronizada para o protocolo

O que é

Hoje, a maioria dos aplicativos da web usa o protocolo HTTP. HttpServlet é projetado para oferecer suporte ao protocolo HTTP. Também é uma classe abstrata. Além disso, a superclasse imediata de HttpServlet é GenericServlet. HttpServlet substitui o método de serviço em GenericServlet. É possível substituir o serviço (método usando doGet () ou doPost () pelos mesmos parâmetros do método de serviço.

Como o HttpServlet é a subclasse de GenericServlet, ele herda as propriedades e métodos do GenericServlet. Portanto, quando o programador estende o HttpServlet, ele pode usar as funcionalidades de ambas as classes.

Diferença entre GenericServlet e

Definição

GenericServlet é uma classe que implementa Servlet, ServletConfig e interface Serializable que fornece a implementação de todos os métodos dessas interfaces, exceto o método de serviço. HttpServlet é uma classe que estende a classe GenericServlet e implementa a interface Serializable que fornece métodos específicos de HTTP. Portanto, isso indica a diferença fundamental entre GenericServlet e

Dependência de protocolo

A principal diferença entre GenericServlet e HttpServlet é que o GenericServlet é independente do protocolo, enquanto o HttpServlet é dependente do protocolo.

Método de serviço

Além disso, em GenericServlet, o método de serviço é abstrato. No entanto, em HttpServlet, o método de serviço não é abstrato. Portanto, esta é outra diferença importante entre GenericServlet e

Assinatura

Subclasse Associada

GenericServlet é a subclasse imediata da interface Servlet. HttpServlet, por outro lado, é a subclasse imediata de GenericServlet.

Pacote Definido

O pacote javax.servlet define GenericServlet, enquanto o pacote javax.servlet.http define o HttpServlet. Esta é outra diferença entre GenericServlet e

Estendendo / Implementando

Além disso, GenericServlet estende a classe Object e implementa interfaces Servlet, ServletConfig e Serializable. HttpServlet estende GenericServelt e implementa uma interface serializável.

Usabilidade

Outra diferença entre GenericServlet e HttpServlet é que o GenericServlet não é comumente usado, enquanto o HttpServlet é comumente usado.

Conclusão

A principal diferença entre GenericServlet e HttpServlet é que o GenericServlet é independente de protocolo que pode ser usado com qualquer protocolo como HTTP, SMTP, FTP, CGI etc., enquanto HttpServlet é dependente de protocolo e só é usado com protocolo

Referência:

1. “Classe GenericServlet em Servlet - Javatpoint.” Www.javatpoint.com, disponível aqui.2. “Classe HttpServlet em Servlet - Javatpoint.” Www.javatpoint.com, disponível aqui.

Cortesia de imagem:

1. “Servlet” de Frederik Wahl - Trabalho próprio (Domínio Público) via Commons Wikimedia

Qual é a diferença entre GenericServlet e HttpServlet