SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Frameworks para
Desenvolvimento web em
Java
Aula 02
André Luiz Forchesatto
Programação WEB???
Protocolo HTTP
Requisição Http - request
Resposta Http - response
Frameworks - web
● Surgiram para trazer produtividade no
desenvolvimento de software web
● Component Based
○ Simplicidade no desenvolvimento e aprendizado;
○ Conjunto de componentes visuais. Semelhante ao
que acontece no desktop;
○ Diminui as preocupações com a parte visual;
○ Exige pouco conhecimento de html+css+javascript
inicialmente
Component Based
Action Based
● Framework MVC
● Baseado em ações;
● Executam actions no servidor;
● Não possui componentes visuais;
● Mais flexibilidade no desenvolvimento;
● Exige mais conhecimento de
html+css+javascript
● Mas fácil de testar
Action Based
Spring Web
● Fornece integração com vários frameworks;
● Todas as funcionalidades do Core podem ser
usadas na web;
● Possui um módulo MVC
● Disponibiliza um EL de integração com os
arquivos JSP
● Fácil integração com o JSF
● Suporte a WebSocket
Spring MVC
● Foi projetado em torno de um
DispatcherServlet que despacha pedidos
para os controladores configuráveis
● Seu uso esta baseado em duas anotações
básicas:
○ @Controller
○ @RequestMapping
● Possui suporte a RestFull com anotações:
○ @RestController
○ @PathVariable
Spring MVC
Spring MVC
Criando um Controller
Classe java simples com a anotação
@Controller e @RequestMapping
RequestMapping
● Anotação responsável por registrar
uma URL em um Controller.
● Pode estar sobre um Método ou
Classe.
RequestMapping
● Atributos:
○ value
■ Nome da URL
○ consumes
■ MediaType (Json, text, html) de entrada na Action
○ produces
■ MediaType (Json, text, html) de resposta na Action
○ headers
■ Cabeçalho da requisição HTTP
○ method
■ Método HTTP (Post, Get, etc..)
○ params
■ Avalia se os parâmetros estão corretos
Template URI
● Variáveis na URL
Exemplo de uso: www.meusistema.com.br/owners/10
Template URI
● URL concatenada
Exemplo de uso: www.meusistema.com.br/owners/10/pets/5
Método HTTP
● Pode ser utilizado o padrão RestFul
● Enum RequestMethod
○ GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE
Redirecionamento e Foward
● Redirect
○ Acontece do lado do cliente, fará o browser acessar
uma nova URL;
● Foward
○ Acontece do lado do servidor transparente para o
cliente/browser
Redirecionamento e Foward
lista é um JSP disponível na pasta: WEB-INF/jsp/produto
Binding View e Modelo
● O name dos input devem ser iguais ao
nome dos atributos das classes.
Classe Model
● Disponibiliza um mapa de valores para a
View
Flash Attributes
● Mapa de parâmetros para redirecionamento
Spring-boot web
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
Spring-boot web
spring.mvc.view.prefix: /WEB-INF/jsp/
spring.mvc.view.suffix: .jsp
application.properties
Prática
● Criar páginas e controllers
Validação
● Suporta Bean Validation 1.0 (JSR-303) e
Bean Validation 1.1 (JSR-349);
● Possui uma interface própria para validação;
Usar Validador Spring
● Implementar interface Validation
Usar Validador Spring
● Registra no @InitBinder
Prática
● Implementar validações
Spring Rest
● @RestController
○ Anotação especifica para serviços Rest
● Assume @ResponseBody por padrão
Spring Rest
● @ResponseBody
○ Transforma o conteúdo de retorno do response no
formato Json ou no MediaType indicado
● @RequestBody
○ Transforma o conteúdo do request em um objeto
java no MediaType indicado
Spring Data - Rest
● Disponibiliza os serviços RestFul a nível de
repositório
Spring Data - Rest
● Pode ser acessado por JavaScript ou
qualquer cliente Rest, retorna um Json para
RestFul com a sessão de Links
Spring Data - Rest
Prática
Criar serviços Rest

Weitere ähnliche Inhalte

Was ist angesagt?

Minicurso Java Server Faces
Minicurso Java Server FacesMinicurso Java Server Faces
Minicurso Java Server Faces
João Longo
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Allyson Barros
 

Was ist angesagt? (20)

Spring data
Spring dataSpring data
Spring data
 
Avaliacao jsf utfpr
Avaliacao jsf utfprAvaliacao jsf utfpr
Avaliacao jsf utfpr
 
Minicurso Java Server Faces
Minicurso Java Server FacesMinicurso Java Server Faces
Minicurso Java Server Faces
 
Como escolher o Framework Java para web?
Como escolher o Framework Java para web?Como escolher o Framework Java para web?
Como escolher o Framework Java para web?
 
Apresentação jsf 1_2
Apresentação jsf 1_2Apresentação jsf 1_2
Apresentação jsf 1_2
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
Java Web Fácil com VRaptor
Java Web Fácil com VRaptorJava Web Fácil com VRaptor
Java Web Fácil com VRaptor
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Arquitetura do Framework Spring
Arquitetura do Framework SpringArquitetura do Framework Spring
Arquitetura do Framework Spring
 
JSF 2.0 e ScrumToys
JSF 2.0 e ScrumToysJSF 2.0 e ScrumToys
JSF 2.0 e ScrumToys
 
Desenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSFDesenvolvimento baseado em componentes com JSF
Desenvolvimento baseado em componentes com JSF
 
Arquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAOArquitetura MVC, JavaBeans e DAO
Arquitetura MVC, JavaBeans e DAO
 
JSF - JavaServer Faces
JSF - JavaServer FacesJSF - JavaServer Faces
JSF - JavaServer Faces
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do GojavaJSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
 
Gradle spring-hateoas-Lombok
Gradle spring-hateoas-LombokGradle spring-hateoas-Lombok
Gradle spring-hateoas-Lombok
 
VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA
VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVAVRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA
VRaptor - Um Framework MVC Web para desenvolvimento ágil com JAVA
 
Angular js
Angular jsAngular js
Angular js
 
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
ZF2 básico : Desenvolvendo um Blog com o Zend Framework 2
 
JavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em DesenvolvimentoJavaServer Faces Produtividade em Desenvolvimento
JavaServer Faces Produtividade em Desenvolvimento
 

Ähnlich wie Framework web 02 - 2016

Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
elliando dias
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
Eduardo Bregaida
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançado
Targettrust
 

Ähnlich wie Framework web 02 - 2016 (20)

Vraptor 3
Vraptor 3Vraptor 3
Vraptor 3
 
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
Dividindo responsabilidades com VRaptor, Rest, HTML5 e CSS3
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
 
.NET Core + MongoDB + Selenium: extração de dados de páginas Web - Databases SP
.NET Core + MongoDB + Selenium: extração de dados de páginas Web - Databases SP.NET Core + MongoDB + Selenium: extração de dados de páginas Web - Databases SP
.NET Core + MongoDB + Selenium: extração de dados de páginas Web - Databases SP
 
Apres s3
Apres s3 Apres s3
Apres s3
 
Lampada Php Conference Brasil 2007 Palestra
Lampada Php Conference Brasil 2007 PalestraLampada Php Conference Brasil 2007 Palestra
Lampada Php Conference Brasil 2007 Palestra
 
Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Quick Form DataBase (QFDB)
Quick Form DataBase (QFDB)Quick Form DataBase (QFDB)
Quick Form DataBase (QFDB)
 
Extração Automatizada de Dados da Web com Selenium WebDriver - Web Scraping -...
Extração Automatizada de Dados da Web com Selenium WebDriver - Web Scraping -...Extração Automatizada de Dados da Web com Selenium WebDriver - Web Scraping -...
Extração Automatizada de Dados da Web com Selenium WebDriver - Web Scraping -...
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São Carlos
 
.NET Core + Selenium: extração de dados de páginas Web - Campinas .NET
.NET Core + Selenium: extração de dados de páginas Web - Campinas .NET.NET Core + Selenium: extração de dados de páginas Web - Campinas .NET
.NET Core + Selenium: extração de dados de páginas Web - Campinas .NET
 
Django
DjangoDjango
Django
 
JSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.javaJSF e outras tecnologias Java Web - IMES.java
JSF e outras tecnologias Java Web - IMES.java
 
T@rget trust asp.net avançado
T@rget trust   asp.net avançadoT@rget trust   asp.net avançado
T@rget trust asp.net avançado
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniter
 
Aplicações Web, Frameworks, REST e SPA
Aplicações Web, Frameworks, REST e SPAAplicações Web, Frameworks, REST e SPA
Aplicações Web, Frameworks, REST e SPA
 
Lab
LabLab
Lab
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 
Curso AngularJS - Parte 1
Curso AngularJS - Parte 1Curso AngularJS - Parte 1
Curso AngularJS - Parte 1
 

Kürzlich hochgeladen

Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
azulassessoria9
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
azulassessoria9
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
PatriciaCaetano18
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
azulassessoria9
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
Autonoma
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
LidianeLill2
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
rfmbrandao
 

Kürzlich hochgeladen (20)

Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
Tema de redação - As dificuldades para barrar o casamento infantil no Brasil ...
 
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
Considerando as pesquisas de Gallahue, Ozmun e Goodway (2013) os bebês até an...
 
6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx6ano variação linguística ensino fundamental.pptx
6ano variação linguística ensino fundamental.pptx
 
Questões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LPQuestões de Língua Portuguesa - gincana da LP
Questões de Língua Portuguesa - gincana da LP
 
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
O estudo do controle motor nada mais é do que o estudo da natureza do movimen...
 
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
A EDUCAÇÃO FÍSICA NO NOVO ENSINO MÉDIO: IMPLICAÇÕES E TENDÊNCIAS PROMOVIDAS P...
 
Missa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdfMissa catequese para o dia da mãe 2025.pdf
Missa catequese para o dia da mãe 2025.pdf
 
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
ATIVIDADE 3 - DESENVOLVIMENTO E APRENDIZAGEM MOTORA - 52_2024
 
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdfatividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
atividade-de-portugues-paronimos-e-homonimos-4º-e-5º-ano-respostas.pdf
 
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM  POLÍGON...
Polígonos, Diagonais de um Polígono, SOMA DOS ANGULOS INTERNOS DE UM POLÍGON...
 
Acessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidadeAcessibilidade, inclusão e valorização da diversidade
Acessibilidade, inclusão e valorização da diversidade
 
Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)Sopa de letras | Dia da Europa 2024 (nível 2)
Sopa de letras | Dia da Europa 2024 (nível 2)
 
Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)Sopa de letras | Dia da Europa 2024 (nível 1)
Sopa de letras | Dia da Europa 2024 (nível 1)
 
Quiz | Dia da Europa 2024 (comemoração)
Quiz | Dia da Europa 2024  (comemoração)Quiz | Dia da Europa 2024  (comemoração)
Quiz | Dia da Europa 2024 (comemoração)
 
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.docGUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
GUIA DE APRENDIZAGEM 2024 9º A - História 1 BI.doc
 
Falando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introdFalando de Física Quântica apresentação introd
Falando de Física Quântica apresentação introd
 
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdfRepública Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
República Velha (República da Espada e Oligárquica)-Sala de Aula.pdf
 
Sistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturasSistema articular aula 4 (1).pdf articulações e junturas
Sistema articular aula 4 (1).pdf articulações e junturas
 
Cartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptxCartão de crédito e fatura do cartão.pptx
Cartão de crédito e fatura do cartão.pptx
 
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdfMESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
MESTRES DA CULTURA DE ASSARÉ Prof. Francisco Leite.pdf
 

Framework web 02 - 2016