Criando Web Service com Servlet€¦ · • Para esse projeto será utilizado a plataforma MySQL de...

Preview:

Citation preview

Criando Web Service com Servlet

Professor Vicente Paulo de Camargo

Criando Web Service com Servlet

• Abra o Eclipse

• Acesse o projeto SistemaEstoque

• Crie o pacote

br.edu.pucgoias.sistemaestoque.servlet

Criando Web Service com Servlet

• Crie a classe EstoqueServlet.java com oseguinte Código:

• Para facilitar, abra o Eclipse e crie o projeto dynamic web SistemaEstoque

• Para esse projeto será utilizado a plataforma MySQL de banco de dado

• Após criar o projeto, crie o pacote br.edu.pucgoias.sistemaestoque.dao

• Crie a classe BaseDao.java e digite o próximo trecho de código para esse classe

Criando Web Service com Servlet

Linha 12: Estabelece a conexão com o driver do banco de dadosLinha 24: Faz a conexão com o banco de dados indicado na url e conforme usuário e senha definidosLinha 34: Tenta efetuar conexão com o banco de dados. Linha 37: Se conectar, apresenta mensagem afirmativa

O método main está sendo usado aqui apenas para que se possa testar a conexão com o banco de dados, usando System.out.print

Criando Web Service com Servlet

• Com o Eclipse aberto, dê um clique direito sobre o nome do projeto SistemaEstoque, como indicado a seguir

1

2

Selecione Build Path

Criando Web Service com Servlet

1

Selecione AddExternalJARs...

2

Selecione o driver

desejado

Criando Web Service com Servlet

O driver será inserido na

aba Librariesdo projeto

Em seguida, confirme em

Apply andClose

O driver do MySQL

inserido na biblioteca do

projeto

Criando Web Service com Servlet

O driver do banco de dados deve ser

copiado para a pasta WebContent\WEB-

INF\lib

Criando Web Service com Servlet

• Para administrar o banco de dados e manipular seus dados utilize os programas HeidiSQL e Dbeaver

• Efetue o download desses dois programas

• Para servidor de banco de dados MySQL utilize um dos programas, WampServer ou Xampp

• Assim, instale um desses dois últimos programas para que sejam o servidor do seu banco de dados

• Esses programas são open source

Criando Web Service com Servlet

• Ative o seu servidor MySQL• Abra o HeidSQL e crie o banco de dados sistema_estoque_web

Botão direito sobre o nome da conexão

Na nova janela informe o nome do banco de dados e selecione a opção latin1_general_ci e confirme

Criando Web Service com Servlet

• Ou:• Abra o HeidSQL, acesse a aba consulta• Digite create database sistema_estoque_web

Selecione esse ícone para executar ou pressione F9

Criando Web Service com Servlet

• Com o Eclipse aberto• Acesse o projeto SistemaEstoque• Dê um clique com o botão direito sobre a classe BaseDao.java• Observe os passos a seguir:

1

2

A conexão está ok

3

Criando Web Service com Servlet

Crie a classe bean Estoque.java ( com getters/setters), com os atributos: id (int), descricao(String), quantidade(double) e precounit(double), no pacote modelo (br.edu.pucgoias.sistemaexemplo.modelo)

Criando Web Service com Servlet

Crie a tabela estoque no banco de dados sistema_estoque_web com a estrutura:

Campo Tipo observação

id int Primary key, auto_increment

descricao varchar(50)

precounit double

quantidade double

Criando Web Service com Servlet

Crie a classe de persistência EstoqueDao.java no pacote dao(br.edu.pucgoias.sistemaexemplo.dao)

DAO (Data Access Object, Objeto de Acesso a Dados) é um padrão de nomenclatura para classes que acessam bases de dados. Esse padrão faz parte do núcleo de padrões JEE da Sun/Oracle.

Criando Web Service com Servlet

EstoqueDao.java (cont.)

Criando Web Service com Servlet

EstoqueDao.java (cont.)

Criando Web Service com Servlet

EstoqueDao.java (cont.)

Criando Web Service com Servlet

EstoqueDao.java (cont.)

Criando Web Service com Servlet

Crie o pacote br.edu.pucgoias.sistemaestoque.controle

Crie a classe EstoqueControle.java

Esta classe efetuará a intermediação entre a camada de visão e a de persistência

Criando Web Service com Servlet

EstoqueControle.java

Criando Web Service com Servlet

Crie o pacote br.edu.pucgoias.sistemaestoque.servlet

Crie um servlet EstoqueServlet.java

Um Servlet é uma classe que permite receber (request) informações do front-end e enviar (response) informações para o front-end

Criando Web Service com Servlet

Digite o código indicado para o servlet EstoqueServlet.java:

Criando Web Service com Servlet

Efetue o download de gson-2.3.1.jar. Basta pesquisar na Internet. Insira esse arquivo no Build Path e também na pasta WebContent/WEB-INF/lib

servlet EstoqueServlet.java (cont.)

Criando Web Service com Servlet

Crie o servlet RetornaUmItem.java no pacote br.edu.pucgoias.sistemaestoque.servlet com o seguinte código:

Criando Web Service com Servlet

Executando a aplicação:Crie a página index.jsp.Para isso, basta selecionar a pasta WebContent com o botão direitoSelecionar new / JSP FileInforme o nome do arquivo (index.jsp)Será criado o arquivoAltere o seu conteúdo para o indicado a seguir:

Execute a aplicação com botão direito sobre o nome do projeto Selecione Run As / Run On Server

Criando Web Service com Servlet

Executando a aplicaçãoSerá apresentada a seguinte tela, simulando o navegador:

A página index.jsp foi ativada automaticamente, pois o index.jspestá configurado no arquivo web.xml

Criando Web Service com Servlet

Como é uma API (Web Service) e não tem nenhum recurso de front-end, iremos utilizar um programa para verificar alguns dos seus recursos

O programa que será utilizado é o Postman

Ele permite enviar e receber dados de uma API ou Web Service através dos diversos comandos (GET, POST, PUT, DELETE...)

Efetue o download desse programa pelo linkhttps://www.getpostman.com/downloads/

Em seguida, instale-o.

Criando Web Service com Servlet

Postman

Criando Web Service com Servlet

Seleção de comandosParâmetrosResposta

Postman

Criando Web Service com Servlet

Inserir url (endpoints)Abas de urlsEnvio

Postman

Criando Web Service com Servlet

Postman

Criando Web Service com Servlet

PostmanAo selecionar a url (ou o endpoint) /estoques, que é indicado noem EstoqueServlet.java. No Postman, fica da seguinte forma:

Criando Web Service com Servlet

url ou endpoint

Resposta

PostmanAo selecionar a url (ou o endpoint) /http://localhost:8099/SistemaEstoque/retornaumitem?codigo=1, que é indicado em RetornaUmItem.java. No Postman, fica da seguinte forma:

Criando Web Service com Servlet

url ou endpoint

Resposta: retorna o objeto correspondenteao estoque de código igual a 1

FIM

Eclipse – Tomcat – Exemplo com Servlet