Loading

Module 1: Desenvolvimento de Aplicações Web com Servlets & JSP

Nota de Estudos
Study Reminders
Support
Text Version

Aplicativo Servlet & Tomcat

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Olá, bem-vindo à moderna sessão de desenvolvimento de aplicativos 7. Nesta parte deste curso,chegamos a um ponto em que somos feitos com coisas básicas, como aplicações CGI. E agoravamos fazer servlets, que você pode pensar como uma forma eficiente de CGI se quiser, mas elaacaba por dar muito mais do que isso, e é a maneira preferida de desenvolveraplicativos web.
Uma vez que você passa a usar o bin do CGI para entender exatamente como os dados e o controle estão fluindono aplicativo.(Consulte o Tempo de Slide: 00:59)
Então, nosso plano é o seguinte:1. Vamos entender como os servlets funcionam.
2. Vamos entender o servidor como uma espécie de sistema operacional em miniatura.3. Começaremos a reunir todas as ferramentas usadas até agora nesta sessão.
Como parte da demo desta vez:1. Estudaremos os detalhes do Tomcat e como ele funciona como um servidor de servlet ou servletcontainer e tais outros tantos nomes diferentes se utilizarão.2. Utilizaremos a instância Tomcat que é enviada com xampp. (Mas você pode usar qualquer instância do Tomcatque você desejar. Você pode aprender sobre isso na parte de instalação na webno site Tomcat). E nesta sessão uma vez que o seu Tomcat for instalado, nós vamos olhar paracomo obtê-lo configurado e como ele funciona.
(Consulte O Tempo De Deslizamento: 02:02)
Até agora, vimos os seguintes estágios do nosso aplicativo:1. Começamos olhando para uma aplicação básica ou seja, o estilo do CGI bin.2. Vimos então que você pode ter uma GUI com um usuário, visualização, modelo e uma loja de arquivos.3. Em seguida, vimos como o lugar da visualização é tomado pelo navegador, o loop de eventos entreo usuário e o navegador está conectado com o servidor através do protocolo HTTP e o servidorfunciona com um banco de dados ou uma loja de arquivos para armazenar as informações enviadas.
4. Em seguida, vimos que o usuário se conecta ao navegador. O servidor pode ser feito para fazercoisas diferentes usando programas CGI/cmdline. Vimos que o programa CGI/cmdline é um processo distintoe que ele se comunica usando STDIN e STDOUT. Os programas CGI/cmdlinepodem usar o banco de dados ou loja de arquivos.
Servlets é uma evolução adicional do relacionamento servidor-CGI. Isto, o resultado se parece com oseguinte:(Consulte o Tempo de Slide: 03:18)
Como de costume temos os eventos do usuário e o navegador e o HTTP Protocol. No entanto, desta vez,há um loop de eventos dentro do servidor, que atende aos eventos HTTP. E quando elerecebe algum tipo de solicitação, ele cria um objeto chamado HttpRequest. Trata-se de um objeto Java eum Servlet é outro objeto que oferece interfaces para as funções Get () e Post (). Há umcerto estilo de escrever essas interfaces que veremos quando olhamos para o código Java.
Quando o servlet é feito executando a solicitação, ele cria um objeto HttpResponse e envia parao loop de eventos do servidor. Agora os objetos HTTRequest e HttpResponse contêm exatamente as mesmas informaçõesque vimos em pedidos HTTP e respostas HTTP até o momento. Assim, à medida que vamos mais longe,veremos os detalhes de como os objetos HttpRequest e HttpResponse contêm exatamente os cabeçalhos HTTPque vimos nas sessões anteriores.
(Consulte O Tempo De Deslizamento: 04:30)
Agora, vamos em frente a nossa demo. Neste demo, veremos como o Tomcat é configurado uma vez que o básicoesteja instalado. Como de costume, seguiremos olhando para servlets simples como HelloWorld e uns poucosoutros. Estes são enviados com o Tomcat e daí torna-se muito fácil entender o básico deo funcionamento do sistema.
À medida que vamos adiante com a demo, vamos estudar:1. A API do servlet.2. Discuta coisas como mapear URLs para servlets.3. O que as páginas de gerenciamento do Tomcat contêm. (Video Starts: 05:15)
Nós fazemos o seguinte:1. Vá para o diretório xampp.2. Inicie o controle xampp.3. Iniciar Tomcat a partir do console.O console exibe o ID do processo do Tomcat ’ (896, aqui) e as portas em que ele está rodando, do qual8080 é aquele que estamos interessados.
O Tomcat possui documentação, configuração, exemplos, etc. construídos em dentro da instalação.
1. Open Browser, digite a URL: https://localhost: 8080 (ou seja, a porta em que o Tomcat érodando como mostrado no console).2. Selecione Documentação.3. Acesse o aplicativo de hiperlink Primeiro web (i.e.http://localhost). Tem links denominados: Introdução,instalação, Organização de Implantação, etc.Similar a arquivos do CGI que estão sendo armazenados no diretório do CGI bin e o arquivo HTML que realmentenos mostra o aplicativo é mantido em htdocs sob Apache, há uma configuração no Tomcat também.
No diretório xampp / Tomcat, há diretórios de conf, lib e logs. A existência de confe log é característica da maioria dos aplicativos web.Tomcat manager app possui autenticação construída em, mas geralmente a senha padrão não funciona.Para adicionar uma senha, vá em conf/Tomcat_users.xml. Adicie as seguintes linhas de código antes de< tomcat_users/ >< user username = ” manager ” manager ” manager-gui ” / >< user username = ” admin ” admin ” admin ” admin ” admin-gui ” admin-gui ” admin-gui ” / >
Isso adiciia autenticação em funções como o gerenciador GUI, o que nos permite ir para a parte do gerente deo aplicativo. À medida que o tempo passou, as pessoas notam que, por várias razões de segurança, você precisa debastante fino acirrado acesso às várias ferramentas que estão disponíveis para o servidor web.
NOTA: Na vida real, a senha precisa ser mais imprevisível para tornar o acesso seguro.
Ao reiniciar o Tomcat, digite suas novas credenciais no app manager para fazer login como gerente. Apenascomo diferentes aplicativos de fairshare armazenados no apache, há diferentes aplicativos manager.tal app de docs, app de exemplos e o próprio app do gerente. Há uma série de diferentes comandosdisponíveis para trabalhar com estes aplicativos como START, STOP, UNDEPLOY, etc.
Para implementar mais aplicativos, faça o upload deles como arquivos de arquivo web (.Arquivos WAR). Por isso, já o Tomcatnos deu uma maneira mais metódica de organizar aplicativos ao contrário dos aplicativos do CGI binonde nós temos que nos apresentar uma organização nós mesmos. Servidores como Tomcat foram desenvolvidosmuito mais tarde com base na experiência com apache como adicionar peças de configuração.
No app de exemplos há exemplos de servlet, exemplos JSP, WebSocket, etc. O Tomcatvem com exemplos básicos no pacote de instalação. A pasta de exemplos de servlets tem alguns apps de servlets. A fonte que vemos não é, na verdade, todo o código-fonte.Acesse ferramentas de desenvolvedor do navegador e recarregue o exemplo para observar solicitação GET eheaders de resposta. A resposta tem o nome do servidor.
O exemplo helloWorld é do equivalente ao cgi-bin que vem com os arquivos do CGI. Este aplicativo de origemé realmente servido por uma solicitação get e a solicitação get fabrica este arquivo. Émencionando partes essenciais do código fonte real.1. classe pública HelloWorld estende o HttpServlet2. Classe HelloWorld tem:public void doGet (Solicitação de HttpServletRequest, HttpServletResponseresposta);que corresponde à chamada de método Get () que realmente vemos em Slide Time: 03:18.3. O objeto de solicitação e o objeto de resposta em Slide Time: 03:18 é o objetoHttpServletRequest e o objeto HttpServletResponse. Esta é a verbosidade padrão de um tantode Java.4. response.setContentType (“ text/html ”), em sua essência (não no código real) é paraconfigurar a Content-Type para o texto / html nos cabeçalhos de resposta.5. PrintWriter () é usado para escrever para o objeto de resposta usando out.println. Isso grava parao arquivo HTML que precisa ser renderizado eventualmente para o usuário, semelhante asystem.out.println no CGI.6. O código real (HelloWorld.java) tem bastante mais alguns detalhes como ID de versão serial,locales, etc que são coisas padrão a fazer para se certificar de que a execução é de acordo
às expectativas dos usuários. Resumidamente, os locales ajudam a ajustar as coisas de tal forma que elassão amigáveis para as pessoas que não são necessariamente do seu país. Tem algumas das coisas maisnuances como cor de fundo, informações extras escritas em arquivo HTML como imagens, hiperlinks, cores e outras opções de formatação como largura, altura, etc.
No geral, o código que vimos está disposto dentro do xampp/Tomcat/webapps/exemplos em quehá servlets, JSP, WebSocket, etc. nós não estaria olhando para tanto. A pasta Servletstem helloWorld.html semelhante à pasta htdocs no mundo do CGI bin. Este é o resumo deo código que eles nos mostraram. E o aplicativo em si (HelloWorld.java) está emWEB-INF/classes.
WEB-INF tem um monte de coisas padrão como web.xml, classes, JSP e libs, que possui várias bibliotecas.
Agora, vamos dar uma olhada em algumas das outras coisas que estão incluídas no Tomcat. Por isso, temos maisexemplos de servlet. Em particular, estes mostram como, por exemplo, as informações em uma solicitação emeste caso ele analisa a URL ou seja, exemplos / servlet/servlet/servlet/RequestInfoExample.html, esaídas a URL, método GET, protocolo usado (neste caso, HTTP/1.1), etc semelhantes aos vários scripts e ambientes shell, exceto que seja feito através de objetos Java.
Terceiro exemplo é o exemplo de requestHeaders que exibe os cabeçalhos de solicitação. Isso é feito porchamando getHeadernames () de objeto HttpServletRequest object em doGet (). resposta.getWriter () retorna um objeto PrintWriter que pode enviar texto de caracteres para o cliente e para cadaum dos nomes de cabeçalho, solicite o objeto da solicitação para obter seu valor.
arquivo postdata.sh coleta todos os dados no post. Isso tem uma série de coisas no formato:HTTPH []. Nós imprimimos isso através da matriz de ambiente. O objeto da solicitação corresponde aa matriz de ambiente. E contém todos esses diferentes elementos. É muito fácil de aprender
o que o sistema está fazendo a partir deste arquivo. E à medida que desenvolvemos nosso app mais adiante, utilizaremos esses exemploscomo nossos pontos de partida e mostraremos como esses tipos de coisas são implementados.Para resumir:1. Fundamentos de Servlets2. Vimos o Tomcat setup3. Aprendemos sobre objetos HttpServletRequest, objetos HttpServletResponse,doGet () e doPost ().4. Já vimos alguns exemplos de servlets.5. Vimos uma dica do que é uma API do servlet, que é exatamente o que aqueles objetos doGet (), doPost (),request e response são.Vamos tirar um pouco de uma olhada em como URLs e servlets são mapeados. E o que o restante das páginas de gerenciamentocontém. Em seguida, envolvamos nosso arquivo CGI existente como um servlet. E finalmentemudá-lo para parecer o nosso app GUI. (Termina Vídeo: 27:36)