SlideShare uma empresa Scribd logo
API REST com Spring Boot
Bruno Coan
Desenvolvedor Java
Desenvolver uma loja virtual
● Web
● Aplicativos Mobile (android / IOS)
● Sistemas de terceiros
REST
REpresentational State Transfer
● Uso de URL's;
● Uso dos métodos HTTP;
● Uso de códigos de status http para sucessos
ou falhas;
● Uso de cabeçalhos HTTP.
Recurso
Recurso
http://localhost:8080/products
[
{
"id": 1,
"name": "Notebook"
},
{
"id": 2,
"name": "TV de lcd"
}
]
Recurso
http://localhost:8080/products/1
{
"id": 1,
"name": "Notebook"
}
http://locahost:8080/products/1/reviews
Métodos HTTP
GET - Recupera dados de um recurso;
POST - Cria um novo recurso;
PUT - Atualiza um recurso;
DELETE - Apaga um recurso.
Media Types
Como eu desejo ver a informação?
Accept:application/xml
http://localhost:8080/products/1
<id>1</id>
<name>Notebook</name>
HTTP Status Codes
HTTP status Codes
● 2xx - status de sucesso
○ 200 ok
○ 201 created
○ 204 no content
● 3xx - status de redirecionamento
○ 301 Moved Permanently
● 4xx status de erro no cliente
○ 400 bad request
○ 404 not found
○ 409 conflict
● 5xx status de erro no servidor
○ 500 internal server error
Quem usa?
Facebook
Google
Twitter
Spring Boot
Spring Boot
● Embed TomCat, sem necessidade de fazer
deploy de .war;
● 'starter' POMs para simplificar
configurações;
● Máximo possível de configurações
automáticas;
● Funcionalidades de métricas e health check.
Hands On
https://github.com/Bcoan/Spring-Boot-Sample

Mais conteúdo relacionado

Mais procurados

Java www
Java wwwJava www
Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?
Felipe Mamud
 
React Native na globo.com
React Native na globo.comReact Native na globo.com
React Native na globo.com
Guilherme Heynemann Bruzzi
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpike
Rafael Benevides
 
Introdução APIs RESTful
Introdução APIs RESTfulIntrodução APIs RESTful
Introdução APIs RESTful
Douglas V. Pasqua
 
Construindo APIs RESTful com Spring
Construindo APIs RESTful com SpringConstruindo APIs RESTful com Spring
Construindo APIs RESTful com Spring
Mateus Malaquias
 
Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache Maven
InformantTalks
 
Ionic workshop
Ionic workshopIonic workshop
Ionic workshop
Alvaro Viebrantz
 
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
Tchelinux
 
React Native - JSday
React Native - JSdayReact Native - JSday
React Native - JSday
Eric Cavalcanti
 
Spring + Tapestry Um novo paradigma de desenvolvimento web
Spring + Tapestry Um novo paradigma de desenvolvimento webSpring + Tapestry Um novo paradigma de desenvolvimento web
Spring + Tapestry Um novo paradigma de desenvolvimento web
elliando dias
 
Flask for CMS/App Framework development.
Flask for CMS/App Framework development.Flask for CMS/App Framework development.
Flask for CMS/App Framework development.
Bruno Rocha
 
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphereCriando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Juliano Martins
 
Criando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHPCriando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHP
2km interativa!
 
As grandes novidades do JSF 2.0!
As grandes novidades do JSF 2.0!As grandes novidades do JSF 2.0!
As grandes novidades do JSF 2.0!
Diego Santos
 
Escrevendo modulos python com rust
Escrevendo modulos python com rustEscrevendo modulos python com rust
Escrevendo modulos python com rust
Bruno Rocha
 
Usando seu codigo java no mule part 1
Usando seu codigo java no mule part 1Usando seu codigo java no mule part 1
Usando seu codigo java no mule part 1
Jeison Barros
 
Maven em 10 minutos
Maven em 10 minutosMaven em 10 minutos
Maven em 10 minutos
Rodrigo Branas
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Emerson Macedo
 
Laravel 5
Laravel 5Laravel 5
Laravel 5
lukzgois
 

Mais procurados (20)

Java www
Java wwwJava www
Java www
 
Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?
 
React Native na globo.com
React Native na globo.comReact Native na globo.com
React Native na globo.com
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpike
 
Introdução APIs RESTful
Introdução APIs RESTfulIntrodução APIs RESTful
Introdução APIs RESTful
 
Construindo APIs RESTful com Spring
Construindo APIs RESTful com SpringConstruindo APIs RESTful com Spring
Construindo APIs RESTful com Spring
 
Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache Maven
 
Ionic workshop
Ionic workshopIonic workshop
Ionic workshop
 
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
APIs, REST e RESTful: O que os programadores precisam saber? - Marcos Echevar...
 
React Native - JSday
React Native - JSdayReact Native - JSday
React Native - JSday
 
Spring + Tapestry Um novo paradigma de desenvolvimento web
Spring + Tapestry Um novo paradigma de desenvolvimento webSpring + Tapestry Um novo paradigma de desenvolvimento web
Spring + Tapestry Um novo paradigma de desenvolvimento web
 
Flask for CMS/App Framework development.
Flask for CMS/App Framework development.Flask for CMS/App Framework development.
Flask for CMS/App Framework development.
 
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphereCriando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
Criando um Web Service Restful com Jersey, Eclipse, JBoss, Tomcat, WebSphere
 
Criando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHPCriando e consumindo Web Services (REST) com o CakePHP
Criando e consumindo Web Services (REST) com o CakePHP
 
As grandes novidades do JSF 2.0!
As grandes novidades do JSF 2.0!As grandes novidades do JSF 2.0!
As grandes novidades do JSF 2.0!
 
Escrevendo modulos python com rust
Escrevendo modulos python com rustEscrevendo modulos python com rust
Escrevendo modulos python com rust
 
Usando seu codigo java no mule part 1
Usando seu codigo java no mule part 1Usando seu codigo java no mule part 1
Usando seu codigo java no mule part 1
 
Maven em 10 minutos
Maven em 10 minutosMaven em 10 minutos
Maven em 10 minutos
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010
 
Laravel 5
Laravel 5Laravel 5
Laravel 5
 

Destaque

Building a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring BootBuilding a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring Boot
Omri Spector
 
REST with Spring Boot #jqfk
REST with Spring Boot #jqfkREST with Spring Boot #jqfk
REST with Spring Boot #jqfk
Toshiaki Maki
 
How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages
Marc Leinbach
 
JHipster, modern web application development made easy
JHipster, modern web application development made easyJHipster, modern web application development made easy
JHipster, modern web application development made easy
Raphaël Brugier
 
Conhecendo API do Facebook
Conhecendo API do FacebookConhecendo API do Facebook
Conhecendo API do Facebook
Virtualize Interatividade Digital
 
Gestao 2.0 para Fundação Dom Cabral
Gestao 2.0 para Fundação Dom CabralGestao 2.0 para Fundação Dom Cabral
Gestao 2.0 para Fundação Dom Cabral
Jose Claudio Terra
 
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_bootGrails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Toshiaki Maki
 
Building REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudBuilding REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring Cloud
Kenny Bastani
 
Workshop Guide: RESTful Java Web Application with Spring Boot
Workshop Guide: RESTful Java Web Application with Spring BootWorkshop Guide: RESTful Java Web Application with Spring Boot
Workshop Guide: RESTful Java Web Application with Spring Boot
Fabricio Epaminondas
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring Cloud
Eberhard Wolff
 
Microservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring CloudMicroservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring Cloud
Eberhard Wolff
 
Spring boot
Spring bootSpring boot
Spring boot
sdeeg
 

Destaque (12)

Building a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring BootBuilding a REST Service in minutes with Spring Boot
Building a REST Service in minutes with Spring Boot
 
REST with Spring Boot #jqfk
REST with Spring Boot #jqfkREST with Spring Boot #jqfk
REST with Spring Boot #jqfk
 
How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages How to call REST API without knowing any programming languages
How to call REST API without knowing any programming languages
 
JHipster, modern web application development made easy
JHipster, modern web application development made easyJHipster, modern web application development made easy
JHipster, modern web application development made easy
 
Conhecendo API do Facebook
Conhecendo API do FacebookConhecendo API do Facebook
Conhecendo API do Facebook
 
Gestao 2.0 para Fundação Dom Cabral
Gestao 2.0 para Fundação Dom CabralGestao 2.0 para Fundação Dom Cabral
Gestao 2.0 para Fundação Dom Cabral
 
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_bootGrails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
Grails 3.0先取り!? Spring Boot入門ハンズオン #jggug_boot
 
Building REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudBuilding REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring Cloud
 
Workshop Guide: RESTful Java Web Application with Spring Boot
Workshop Guide: RESTful Java Web Application with Spring BootWorkshop Guide: RESTful Java Web Application with Spring Boot
Workshop Guide: RESTful Java Web Application with Spring Boot
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring Cloud
 
Microservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring CloudMicroservice With Spring Boot and Spring Cloud
Microservice With Spring Boot and Spring Cloud
 
Spring boot
Spring bootSpring boot
Spring boot
 

Semelhante a Spring boot

TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
Rodrigo Urubatan
 
Rest Java One
Rest Java OneRest Java One
Rest Java One
Dextra
 
Consumindo dados via web service no android
Consumindo dados via web service no androidConsumindo dados via web service no android
Consumindo dados via web service no android
Alexandre Antunes
 
Introdução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos ReduIntrodução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos Redu
Guilherme
 
APIs REST - Introdução e alguns conceitos
APIs REST - Introdução e alguns conceitosAPIs REST - Introdução e alguns conceitos
APIs REST - Introdução e alguns conceitos
Felix Costa
 
Introdução aos Servlets e JSPs
Introdução aos Servlets e JSPsIntrodução aos Servlets e JSPs
Introdução aos Servlets e JSPs
Luiz Ricardo Silva
 
Melhorando A Performance Da Sua Aplicação Web
Melhorando A Performance Da Sua Aplicação WebMelhorando A Performance Da Sua Aplicação Web
Melhorando A Performance Da Sua Aplicação Web
Maurício Linhares
 
PHP RESTful Web Services
PHP RESTful Web ServicesPHP RESTful Web Services
PHP RESTful Web Services
Felipe Ribeiro
 
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APITrilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Waldyr Felix
 
Curso de Node.js e MongoDB - 11
Curso de Node.js e MongoDB - 11Curso de Node.js e MongoDB - 11
Curso de Node.js e MongoDB - 11
Luiz Duarte
 
Design e boas praticas de apis com CSharp
Design e boas praticas de apis com CSharpDesign e boas praticas de apis com CSharp
Design e boas praticas de apis com CSharp
Rodolfo Fadino Junior
 
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
JavaOne LATAM 2016 - Combinando AngularJS com Java EEJavaOne LATAM 2016 - Combinando AngularJS com Java EE
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
Rodrigo Cândido da Silva
 
Workshop Hands-On APIX 2018 - Trilha Básica
Workshop Hands-On APIX 2018 - Trilha BásicaWorkshop Hands-On APIX 2018 - Trilha Básica
Workshop Hands-On APIX 2018 - Trilha Básica
Sensedia
 
Introdução Programação de Aplicações Web
Introdução Programação de Aplicações WebIntrodução Programação de Aplicações Web
Introdução Programação de Aplicações Web
Diogo Benicá
 
Design de APIs REST
Design de APIs RESTDesign de APIs REST
Design de APIs REST
Leonel Morais
 
Google Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonteGoogle Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonte
Johann Vivot
 
No mundo das ap is com Restful webservices
No mundo das ap is com Restful webservicesNo mundo das ap is com Restful webservices
No mundo das ap is com Restful webservices
Waldemar Neto
 
IoTizando com JavaScript
IoTizando com JavaScriptIoTizando com JavaScript
IoTizando com JavaScript
Heider Lopes
 
PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09
Felipe Ribeiro
 
Design e boas práticas de api's com CSharp
Design e boas práticas de api's com CSharpDesign e boas práticas de api's com CSharp
Design e boas práticas de api's com CSharp
Rodolfo Fadino Junior
 

Semelhante a Spring boot (20)

TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
TDC2017 - POA - Aprendendo a usar Xamarin para desenvolver aplicações moveis ...
 
Rest Java One
Rest Java OneRest Java One
Rest Java One
 
Consumindo dados via web service no android
Consumindo dados via web service no androidConsumindo dados via web service no android
Consumindo dados via web service no android
 
Introdução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos ReduIntrodução a plataforma de aplicativos Redu
Introdução a plataforma de aplicativos Redu
 
APIs REST - Introdução e alguns conceitos
APIs REST - Introdução e alguns conceitosAPIs REST - Introdução e alguns conceitos
APIs REST - Introdução e alguns conceitos
 
Introdução aos Servlets e JSPs
Introdução aos Servlets e JSPsIntrodução aos Servlets e JSPs
Introdução aos Servlets e JSPs
 
Melhorando A Performance Da Sua Aplicação Web
Melhorando A Performance Da Sua Aplicação WebMelhorando A Performance Da Sua Aplicação Web
Melhorando A Performance Da Sua Aplicação Web
 
PHP RESTful Web Services
PHP RESTful Web ServicesPHP RESTful Web Services
PHP RESTful Web Services
 
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APITrilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
 
Curso de Node.js e MongoDB - 11
Curso de Node.js e MongoDB - 11Curso de Node.js e MongoDB - 11
Curso de Node.js e MongoDB - 11
 
Design e boas praticas de apis com CSharp
Design e boas praticas de apis com CSharpDesign e boas praticas de apis com CSharp
Design e boas praticas de apis com CSharp
 
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
JavaOne LATAM 2016 - Combinando AngularJS com Java EEJavaOne LATAM 2016 - Combinando AngularJS com Java EE
JavaOne LATAM 2016 - Combinando AngularJS com Java EE
 
Workshop Hands-On APIX 2018 - Trilha Básica
Workshop Hands-On APIX 2018 - Trilha BásicaWorkshop Hands-On APIX 2018 - Trilha Básica
Workshop Hands-On APIX 2018 - Trilha Básica
 
Introdução Programação de Aplicações Web
Introdução Programação de Aplicações WebIntrodução Programação de Aplicações Web
Introdução Programação de Aplicações Web
 
Design de APIs REST
Design de APIs RESTDesign de APIs REST
Design de APIs REST
 
Google Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonteGoogle Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonte
 
No mundo das ap is com Restful webservices
No mundo das ap is com Restful webservicesNo mundo das ap is com Restful webservices
No mundo das ap is com Restful webservices
 
IoTizando com JavaScript
IoTizando com JavaScriptIoTizando com JavaScript
IoTizando com JavaScript
 
PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services - PHPConf'09
 
Design e boas práticas de api's com CSharp
Design e boas práticas de api's com CSharpDesign e boas práticas de api's com CSharp
Design e boas práticas de api's com CSharp
 

Spring boot