SlideShare uma empresa Scribd logo

MC - Java Enterprise Edition 6 (Java EE)

Este documento fornece informações sobre uma palestra gratuita sobre Java EE 6. Ele inclui o objetivo da palestra, a agenda, informações sobre o palestrante e uma seção de doações para uma instituição de caridade local.

1 de 127
Baixar para ler offline
Mini-curso Gratuito




             Rodrigo Cândido da Silva
                 VOffice / Globalcode




Globalcode                              Slide 1
Mini-curso Gratuito




             http://open4education.googlecode.com/



Globalcode                                           Slide 2
Doações
  •  Entidade
        Orionópolis Catarinense
               É uma entidade filantrópica, sem fins lucrativos, que abriga gratuitamente em
                sistema de vila e regime de internato: idosos, crianças e adultos portadores de
                deficiências e multideficiencias física e mental que vivem em estado de
                abandono familiar e econômico.
               Atualmente abrigam 67 pessoas
        Para Maiores Informações
               http://orionopolis.floripa.com.br
               orione@fastlane.com.br
               Telefone – (048) 3343-0087


  •  MUITO OBRIGADO À TODOS !!!


Globalcode                                                                                Slide 3
Palestrante




Globalcode    Slide 4
Objetivo


             Conhecer a plataforma Java Enterprise Edition 6
             e entender as principais diferenças desta versão
                    em relação as versões anteriores




Globalcode                                                      Slide 5
Agenda
     "     Plataforma Java EE
     "     Principais Tecnologias (APIs)
           "   Profiles
           "   Java Servlet 3.0
           "   JSF 2.0
           "   CDI
           "   EJB 3.1
           "   JPA 2.0
     "     Comparativo de Versões
     "     Perguntas e Respostas




Globalcode                                 Slide 6

Recomendados

GlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EEGlassFish, Maven, Cloud e Java EE
GlassFish, Maven, Cloud e Java EEBruno Borges
 
Java EE no ambiente corporativo: primeiros passos WebLogic 12c
Java EE no ambiente corporativo: primeiros passos WebLogic 12cJava EE no ambiente corporativo: primeiros passos WebLogic 12c
Java EE no ambiente corporativo: primeiros passos WebLogic 12cBruno Borges
 
GlassFish e Maven: Java EE sem dor!
GlassFish e Maven: Java EE sem dor!GlassFish e Maven: Java EE sem dor!
GlassFish e Maven: Java EE sem dor!Bruno Borges
 
GlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEGlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEBruno Borges
 
Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Novidades do JSF: Um tour completo no JSF 2.2
Novidades do JSF: Um tour completo no JSF 2.2Dr. Spock
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com PrimefacesFabio Noth
 

Mais conteúdo relacionado

Mais procurados

Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeansSliedesharessbarbosa
 
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaDominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaAna Albert
 
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
 
Java OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIJava OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIYitzhak Stone
 
Enterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaEnterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaGlobalcode
 
ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)mauriciopel
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsIgo Coelho
 
Apresentação jsf 2.0
Apresentação jsf 2.0Apresentação jsf 2.0
Apresentação jsf 2.0Paulo Neto
 
JavaServer Faces - Desenvolvendo aplicações web com produtividade
JavaServer Faces - Desenvolvendo aplicações web com produtividadeJavaServer Faces - Desenvolvendo aplicações web com produtividade
JavaServer Faces - Desenvolvendo aplicações web com produtividadeRafael Ponte
 
Migrando de Applets para JavaFX, e Modelos de Distribuição de Apps
Migrando de Applets para JavaFX, e Modelos de Distribuição de AppsMigrando de Applets para JavaFX, e Modelos de Distribuição de Apps
Migrando de Applets para JavaFX, e Modelos de Distribuição de AppsBruno Borges
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise EditionDaniel Arndt Alves
 

Mais procurados (20)

GUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EEGUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EE
 
Tutorial Java EE
Tutorial Java EETutorial Java EE
Tutorial Java EE
 
Construindo aplicações web java com netbeans
Construindo aplicações web java com netbeansConstruindo aplicações web java com netbeans
Construindo aplicações web java com netbeans
 
Serra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EESerra StarTec 2013 - Java EE
Serra StarTec 2013 - Java EE
 
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E JpaDominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
Dominando Jsf E Facelets Utilizando Spring 2.5, Hibernate E Jpa
 
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!
 
Tutorial EJB 3.0 (2009)
Tutorial EJB 3.0 (2009)Tutorial EJB 3.0 (2009)
Tutorial EJB 3.0 (2009)
 
Jee6
Jee6Jee6
Jee6
 
Flisolgo2010
Flisolgo2010Flisolgo2010
Flisolgo2010
 
EJB
EJBEJB
EJB
 
Java OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIJava OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMI
 
Enterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na práticaEnterprise JavaBeans simples e descomplicado, na prática
Enterprise JavaBeans simples e descomplicado, na prática
 
JUDCon Brazil 2013
JUDCon Brazil 2013JUDCon Brazil 2013
JUDCon Brazil 2013
 
ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)
 
Desenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e ServletsDesenvolvimento web em java com JSP e Servlets
Desenvolvimento web em java com JSP e Servlets
 
Apresentação jsf 2.0
Apresentação jsf 2.0Apresentação jsf 2.0
Apresentação jsf 2.0
 
JavaServer Faces - Desenvolvendo aplicações web com produtividade
JavaServer Faces - Desenvolvendo aplicações web com produtividadeJavaServer Faces - Desenvolvendo aplicações web com produtividade
JavaServer Faces - Desenvolvendo aplicações web com produtividade
 
Migrando de Applets para JavaFX, e Modelos de Distribuição de Apps
Migrando de Applets para JavaFX, e Modelos de Distribuição de AppsMigrando de Applets para JavaFX, e Modelos de Distribuição de Apps
Migrando de Applets para JavaFX, e Modelos de Distribuição de Apps
 
Java Platform, Enterprise Edition
Java Platform, Enterprise EditionJava Platform, Enterprise Edition
Java Platform, Enterprise Edition
 
Prime Faces
Prime FacesPrime Faces
Prime Faces
 

Destaque (20)

ReduplicaçãO
ReduplicaçãOReduplicaçãO
ReduplicaçãO
 
O ensino pelas novas tecnologias
O ensino pelas novas tecnologiasO ensino pelas novas tecnologias
O ensino pelas novas tecnologias
 
Practica de powerpoint
Practica de powerpointPractica de powerpoint
Practica de powerpoint
 
Noa leire
Noa leireNoa leire
Noa leire
 
Step one
Step oneStep one
Step one
 
53011213098
5301121309853011213098
53011213098
 
Calidad
CalidadCalidad
Calidad
 
A MIDIA POR TRÁZ DA MANCHETE.
A MIDIA POR TRÁZ DA MANCHETE.A MIDIA POR TRÁZ DA MANCHETE.
A MIDIA POR TRÁZ DA MANCHETE.
 
ComunicaçãO F2 F E Mediatizadapttr
ComunicaçãO F2 F E MediatizadapttrComunicaçãO F2 F E Mediatizadapttr
ComunicaçãO F2 F E Mediatizadapttr
 
SUPLEMENTO MINERAL: Adiciona e Multiplica
SUPLEMENTO MINERAL: Adiciona e Multiplica SUPLEMENTO MINERAL: Adiciona e Multiplica
SUPLEMENTO MINERAL: Adiciona e Multiplica
 
Formação Tic
Formação TicFormação Tic
Formação Tic
 
¿Por qué la Virtualización?
¿Por qué la Virtualización?¿Por qué la Virtualización?
¿Por qué la Virtualización?
 
Album de fotografías 2º a primaria
Album de fotografías 2º a primariaAlbum de fotografías 2º a primaria
Album de fotografías 2º a primaria
 
Teoria De Dow
Teoria De DowTeoria De Dow
Teoria De Dow
 
Proj I Acessibilidade (18.06.09) REVISADO FINAL
Proj I  Acessibilidade (18.06.09) REVISADO FINALProj I  Acessibilidade (18.06.09) REVISADO FINAL
Proj I Acessibilidade (18.06.09) REVISADO FINAL
 
LoopMarket-presentacion
LoopMarket-presentacionLoopMarket-presentacion
LoopMarket-presentacion
 
Guerreando
GuerreandoGuerreando
Guerreando
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Biologia - Planejamento Interativo
Biologia - Planejamento InterativoBiologia - Planejamento Interativo
Biologia - Planejamento Interativo
 
Intergenerational Justice in Austerity Times
Intergenerational Justice in Austerity TimesIntergenerational Justice in Austerity Times
Intergenerational Justice in Austerity Times
 

Semelhante a MC - Java Enterprise Edition 6 (Java EE)

Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Facescejug
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaMariana de Azevedo Santos
 
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"Palest"Tecnologias para Desenvolvimento Baseado em Componentes"
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"sbcars
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem JavaUFPA
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesRodrigo Cândido da Silva
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev IntroduçãoMarcio Marinho
 
Anatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer FacesAnatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer FacesRafael Ponte
 
Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenLeandro Costa
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Aécio Costa
 
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EE
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EEUso de Critérios de Seleção para Frameworks Livres em Plataforma Java EE
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EEMarco Antonio Maciel
 

Semelhante a MC - Java Enterprise Edition 6 (Java EE) (20)

Anatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer FacesAnatomia do JSF – JavaServer Faces
Anatomia do JSF – JavaServer Faces
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Spring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em JavaSpring: Overview do framework mais popular para desenvolvimento em Java
Spring: Overview do framework mais popular para desenvolvimento em Java
 
Tecnologia Java
Tecnologia JavaTecnologia Java
Tecnologia Java
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Java v1.1
Java v1.1Java v1.1
Java v1.1
 
Aula 1 apresentação
Aula 1   apresentaçãoAula 1   apresentação
Aula 1 apresentação
 
1409243945064
14092439450641409243945064
1409243945064
 
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"Palest"Tecnologias para Desenvolvimento Baseado em Componentes"
Palest"Tecnologias para Desenvolvimento Baseado em Componentes"
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem Java
 
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrõesMC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
MC31 - Desenvolvimento um Aplicativo completo usando JSF, EJB e padrões
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
Anatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer FacesAnatomia do JSF, JavaServer Faces
Anatomia do JSF, JavaServer Faces
 
Jsf com hibernate, spring security e maven
Jsf com hibernate, spring security e mavenJsf com hibernate, spring security e maven
Jsf com hibernate, spring security e maven
 
Acelerando o desenvolvimento java com rad 7.5
Acelerando o desenvolvimento java com rad 7.5Acelerando o desenvolvimento java com rad 7.5
Acelerando o desenvolvimento java com rad 7.5
 
Netbeans Slides
Netbeans SlidesNetbeans Slides
Netbeans Slides
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
 
Introdução a jsf
Introdução a jsfIntrodução a jsf
Introdução a jsf
 
Apache e Java
Apache e JavaApache e Java
Apache e Java
 
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EE
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EEUso de Critérios de Seleção para Frameworks Livres em Plataforma Java EE
Uso de Critérios de Seleção para Frameworks Livres em Plataforma Java EE
 

Mais de Rodrigo Cândido da Silva

Protegendo Microservices: Boas Práticas e Estratégias de Implementação
Protegendo Microservices: Boas Práticas e Estratégias de ImplementaçãoProtegendo Microservices: Boas Práticas e Estratégias de Implementação
Protegendo Microservices: Boas Práticas e Estratégias de ImplementaçãoRodrigo Cândido da Silva
 
Protecting Java Microservices: Best Practices and Strategies
Protecting Java Microservices: Best Practices and StrategiesProtecting Java Microservices: Best Practices and Strategies
Protecting Java Microservices: Best Practices and StrategiesRodrigo Cândido da Silva
 
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesWorkshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesRodrigo Cândido da Silva
 
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSWorkshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSRodrigo Cândido da Silva
 
Workshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring BootWorkshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring BootRodrigo Cândido da Silva
 
Workshop Microservices - Arquitetura Microservices
Workshop Microservices - Arquitetura MicroservicesWorkshop Microservices - Arquitetura Microservices
Workshop Microservices - Arquitetura MicroservicesRodrigo Cândido da Silva
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaRodrigo Cândido da Silva
 
GUJavaSC - Combinando Micro-serviços com Práticas DevOps
GUJavaSC - Combinando Micro-serviços com Práticas DevOpsGUJavaSC - Combinando Micro-serviços com Práticas DevOps
GUJavaSC - Combinando Micro-serviços com Práticas DevOpsRodrigo Cândido da Silva
 
GUJavaSC - Criando Micro-serviços Reativos com Java
GUJavaSC - Criando Micro-serviços Reativos com JavaGUJavaSC - Criando Micro-serviços Reativos com Java
GUJavaSC - Criando Micro-serviços Reativos com JavaRodrigo Cândido da Silva
 
JavaOne 2016 - Reactive Microservices with Java and Java EE
JavaOne 2016 - Reactive Microservices with Java and Java EEJavaOne 2016 - Reactive Microservices with Java and Java EE
JavaOne 2016 - Reactive Microservices with Java and Java EERodrigo Cândido da Silva
 
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 EERodrigo Cândido da Silva
 
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTJavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTRodrigo Cândido da Silva
 
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudTDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudRodrigo Cândido da Silva
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...Rodrigo Cândido da Silva
 
QCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EEQCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EERodrigo Cândido da Silva
 

Mais de Rodrigo Cândido da Silva (20)

Java 9, 10 e ... 11
Java 9, 10 e ... 11Java 9, 10 e ... 11
Java 9, 10 e ... 11
 
Cloud Native Java EE
Cloud Native Java EECloud Native Java EE
Cloud Native Java EE
 
Protegendo Microservices: Boas Práticas e Estratégias de Implementação
Protegendo Microservices: Boas Práticas e Estratégias de ImplementaçãoProtegendo Microservices: Boas Práticas e Estratégias de Implementação
Protegendo Microservices: Boas Práticas e Estratégias de Implementação
 
Protecting Java Microservices: Best Practices and Strategies
Protecting Java Microservices: Best Practices and StrategiesProtecting Java Microservices: Best Practices and Strategies
Protecting Java Microservices: Best Practices and Strategies
 
As novidades da nova versão do Java 9
As novidades da nova versão do Java 9As novidades da nova versão do Java 9
As novidades da nova versão do Java 9
 
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesWorkshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
Workshop Microservices - Distribuindo os Microservices com Docker e Kubernetes
 
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSSWorkshop Microservices - Microservices com Spring Cloud e Netflix OSS
Workshop Microservices - Microservices com Spring Cloud e Netflix OSS
 
Workshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring BootWorkshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring Boot
 
Workshop Microservices - Arquitetura Microservices
Workshop Microservices - Arquitetura MicroservicesWorkshop Microservices - Arquitetura Microservices
Workshop Microservices - Arquitetura Microservices
 
GUJavaSC - Protegendo Microservices em Java
GUJavaSC - Protegendo Microservices em JavaGUJavaSC - Protegendo Microservices em Java
GUJavaSC - Protegendo Microservices em Java
 
TDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com JavaTDC Floripa 2017 - Criando Microservices Reativos com Java
TDC Floripa 2017 - Criando Microservices Reativos com Java
 
GUJavaSC - Combinando Micro-serviços com Práticas DevOps
GUJavaSC - Combinando Micro-serviços com Práticas DevOpsGUJavaSC - Combinando Micro-serviços com Práticas DevOps
GUJavaSC - Combinando Micro-serviços com Práticas DevOps
 
GUJavaSC - Criando Micro-serviços Reativos com Java
GUJavaSC - Criando Micro-serviços Reativos com JavaGUJavaSC - Criando Micro-serviços Reativos com Java
GUJavaSC - Criando Micro-serviços Reativos com Java
 
JavaOne 2016 - Reactive Microservices with Java and Java EE
JavaOne 2016 - Reactive Microservices with Java and Java EEJavaOne 2016 - Reactive Microservices with Java and Java EE
JavaOne 2016 - Reactive Microservices with Java and Java EE
 
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
 
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTJavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
 
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring CloudTDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
TDC Floripa 2016 - Decolando seus micro-serviços na Spring Cloud
 
GUJavaSC - Combinando AngularJS com Java EE
GUJavaSC - Combinando AngularJS com Java EEGUJavaSC - Combinando AngularJS com Java EE
GUJavaSC - Combinando AngularJS com Java EE
 
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
QCon SP 2016 - Construindo Microservices Auto-curáveis com Spring Cloud e Net...
 
QCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EEQCon 2015 - Combinando AngularJS com Java EE
QCon 2015 - Combinando AngularJS com Java EE
 

Último

ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx2m Assessoria
 
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docxMAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docx
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx2m Assessoria
 
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docxATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx2m Assessoria
 
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxjosecarlos413721
 
Apresentação bichinhos da TI: o que é esse arquiteto de software
Apresentação bichinhos da TI: o que é esse arquiteto de softwareApresentação bichinhos da TI: o que é esse arquiteto de software
Apresentação bichinhos da TI: o que é esse arquiteto de softwareAleatório .
 
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docxMAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx2m Assessoria
 
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docx
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docxATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docx
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docxjosecarlos413721
 
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docxATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx2m Assessoria
 
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docx
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docxMAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docx
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docxjosecarlos413721
 
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx2m Assessoria
 
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docxATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx2m Assessoria
 
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docxATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx2m Assessoria
 
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docxATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docx
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx2m Assessoria
 
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docxMAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx2m Assessoria
 
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docx
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docxATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docx
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docxjosecarlos413721
 
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024Ismael Ash
 

Último (16)

ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
 
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docxMAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docx
MAPA - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
 
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docxATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx
ATIVIDADE 1- LÓGICA PARA COMPUTAÇÃO - 512024.docx
 
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
 
Apresentação bichinhos da TI: o que é esse arquiteto de software
Apresentação bichinhos da TI: o que é esse arquiteto de softwareApresentação bichinhos da TI: o que é esse arquiteto de software
Apresentação bichinhos da TI: o que é esse arquiteto de software
 
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docxMAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
 
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docx
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docxATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docx
ATIVIDADE 1 - MODELAGEM DE SOFTWARE – 512024.docx
 
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docxATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx
ATIVIDADE 1 - CONTABILIDADE EMPRESARIAL - 512024.docx
 
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docx
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docxMAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docx
MAPA - INTRODUÇÃO À ENGENHARIA - 51-2024.docx
 
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docxATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
ATIVIDADE 1 - ESTATÍSTICA E PROBABILIDADE - 512024.docx
 
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docxATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx
ATIVIDADE 1 - PESQUISA OPERACIONAL - 512024.docx
 
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docxATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx
ATIVIDADE 1 - TEORIA DAS ESTRUTURAS I - 512024.docx
 
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docxATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES  - 512024.docx
ATIVIDADE 1 - ADSIS - FUNDAMENTOS E ARQUITETURA DE COMPUTADORES - 512024.docx
 
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docxMAPA -INTRODUÇÃO À ENGENHARIA  - 512024.docx
MAPA -INTRODUÇÃO À ENGENHARIA - 512024.docx
 
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docx
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docxATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docx
ATIVIDADE 1 - TI - BOAS PRÁTICAS DE GOVERNANÇA EM TI - 512024.docx
 
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024
Serviços para fazer deploy do seu Frontend - react ceara 8 meetup 2024
 

MC - Java Enterprise Edition 6 (Java EE)

  • 1. Mini-curso Gratuito Rodrigo Cândido da Silva VOffice / Globalcode Globalcode Slide 1
  • 2. Mini-curso Gratuito http://open4education.googlecode.com/ Globalcode Slide 2
  • 3. Doações •  Entidade  Orionópolis Catarinense   É uma entidade filantrópica, sem fins lucrativos, que abriga gratuitamente em sistema de vila e regime de internato: idosos, crianças e adultos portadores de deficiências e multideficiencias física e mental que vivem em estado de abandono familiar e econômico.   Atualmente abrigam 67 pessoas  Para Maiores Informações   http://orionopolis.floripa.com.br   orione@fastlane.com.br   Telefone – (048) 3343-0087 •  MUITO OBRIGADO À TODOS !!! Globalcode Slide 3
  • 5. Objetivo Conhecer a plataforma Java Enterprise Edition 6 e entender as principais diferenças desta versão em relação as versões anteriores Globalcode Slide 5
  • 6. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 6
  • 7. Jogo Rápido •  Quem trabalha com Java EE?  Servlet?  JSF?  JPA?  EJB? •  Quem já estudou alguma funcionalidade do Java EE 6? •  Quem está interessado em se atualizar? •  Quem gostou do jogo do Brasil ontem? :/ Globalcode Slide 7
  • 8. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 8
  • 9. Plataforma Java •  Desenvolvimento de software robusto para diferentes tipos de dispositivos   PC, celular, palmtop, robôs, etc. •  Software Multiplataforma   “Escreva uma vez e execute em qualquer lugar...”   Código não precisa ser recompilado para executar em outro sistema operacional •  Máquina Virtual (Java Virtual Machine - JVM)   Responsável por oferecer a flexibilidade de sistema operacional para um software Java •  Mantida pela comunidade de desenvolvedores por meio do JCP (Java Community Process) Globalcode Slide 9
  • 10. Plataforma Java •  A plataforma é dividida em três partes:  Java Standard Edition (Java SE)   Base do Java que contém as principais APIs  Java Enterprise Editon (Java EE)   Versão de Java para desenvolvimento de aplicações Web e enterprise que rodam em servidores padronizados  Java Micro Edition (Java ME)   Redução da plataforma Standard para dispositivos móveis como PDA e celulares Globalcode Slide 10
  • 11. Java Enterprise Edition •  Suporte ao desenvolvimento de aplicações “enterprise”  Aplicações distribuídas, seguras, escaláveis, de alta disponibilidade e com baixo custo de manutenção •  Plataforma para desenvolvimento de software de pequeno, médio e grande porte em múltiplas camadas de componentes  Componentes “rodam” em um servidor Java EE Globalcode Slide 11
  • 13. Java Enterprise Edition •  Containers Java EE Globalcode Slide 13
  • 14. Java Enterprise Edition •  Serviços oferecidos pelos containeres Java EE:  Gestão de memória, ciclo de vida de objetos e estado de objetos  Conexões, Transações, Serviço de nomes  Segurança  Tolerância a falhas  Integração  WebServices  Clustering  Alta disponibilidade  Confiabilidade... Globalcode Slide 14
  • 15. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 15
  • 16. Containers (Java EE 5) Globalcode Slide 16
  • 17. Containers (Java EE 5) •  Web Container  Trabalha em conjunto com um Servidor HTTP para oferecer suporte aos componentes da camada Web   Tomcat (Apache)   Jetty   JRun (Adobe) •  EJB Container  É o servidor de componentes transacionais EJB   OpenEJB (Apache) *  Containeres específicos dos fabricantes de servidores de aplicação Globalcode Slide 17
  • 18. Profiles •  Define um sub-set de APIs do Java EE para rodar determinado tipo de aplicação (arquitetura) •  Dois profiles foram definidos neste momento pela especificação do Java Enterprise  Web Profile   Semelhante a idéia do Web container, mas com mais funcionalidades incorporadas  Full Profile   Servidor Java EE completo Globalcode Slide 18
  • 21. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 21
  • 22. Java Servlet •  Aplicações que rodam no servidor e respondem requisições de clientes Web Globalcode Slide 22
  • 23. Java Servlet 3.0 •  Novos Recursos  Configuração por Anotações  Registro Dinâmico de Componentes  Web Fragments  Servlet Container Initializer  Resources Sharing  Programatic Login / Logout  Asynchronous Support Globalcode Slide 23
  • 24. Java Servlet 3.0 •  Configuração por Anotações  @WebServlet   Define o mapeamento do componente Servlet  @WebFilter   Define o mapeamento do componente Filter  @WebListener   Define o mapeamento do componente Listener  @WebInitParam   Define um parâmetro de inicialização  @ServletSecurity   Define as constraints de segurança  @MultipartConfig   Utilizado para upload de arquivos Globalcode Slide 24
  • 25. Java Servlet 3.0 •  @WebServlet Globalcode Slide 25
  • 26. Java Servlet 3.0 •  @WebFilter Globalcode Slide 26
  • 27. Java Servlet 3.0 •  @WebListener Globalcode Slide 27
  • 28. Java Servlet 3.0 •  @WebInitParam Globalcode Slide 28
  • 29. Java Servlet 3.0 •  @ServletSecurity Globalcode Slide 29
  • 30. Java Servlet 3.0 •  Registro Dinâmico de Componentes  Carregamento dinâmico de Servlets, Filters e Listeners  Executado durante a inicialização do ServletContext  Registro   ServletContext#addServlet (#addFilter | #addListener)  Criação e Registro   ServletContext#createServlet (#createFilter | #createListener)  Lookup   ServletContext#getServlet (#getFilter | #getListener) Globalcode Slide 30
  • 31. Java Servlet 3.0 •  Registro Dinâmico de Componentes Globalcode Slide 31
  • 32. Java Servlet 3.0 •  Web Fragments  Define um pedaço do arquivo à ser incorporado ao web.xml  Pode ser definido em diretórios META-INF de arquivos JARs adicionados no classpath da aplicação web (WEB-INF/lib)   Ideal para configuração de frameworks (Struts, Spring, GWT)  Sintaxe praticamente idêntica ao arquivo web.xml tradicional, com pequenas modificações na ordem dos elementos  Caso haja conflito de nomes (Servlets, Filters, etc) os componentes definidos no web.xml tem prioridade  Uma aplicação web pode ter múltiplos web fragments  É definido pela tag <web-fragment> Globalcode Slide 32
  • 33. Java Servlet 3.0 •  Web Fragments Globalcode Slide 33
  • 34. Java Servlet 3.0 •  Servlet Container Initializer  Mecanismo para inicialização de recursos (objetos) através de bibliotecas “terceiras” incorporados na aplicação web  Executado antes de qualquer Listener durante a fase de inicialização da aplicação  Para implementação   Implementar a interface –  ServletContainerInitializer   Definir quais tipos (anotações) de classes serão inspecionadas –  @HandlesTypes  Esta classe intercepta os componentes de acordo com os handles types definidos e executa o método onStartup(…) Globalcode Slide 34
  • 35. Java Servlet 3.0 •  Servlet Container Initializer Globalcode Slide 35
  • 36. Java Servlet 3.0 •  Resources Sharing  Possibilidade de adicionar JSPs dentro de arquivos JARs existentes no classpath (WEB-INF/lib) da aplicação web  Devem ser organizados na seguinte estrutura   WEB-INF/lib/[*.jar]/META-INF/resources  JSPs definidos com o mesmo nome no diretório da aplicação web terão prioridade  Exemplo de utilização   mywebapp.war –  /WEB-INF/lib/shared.jar!/META-INF/resources/shared.jsp   Endereço de acesso –  http://server/mywebapp/shared.jsp Globalcode Slide 36
  • 37. Java Servlet 3.0 •  Programatic Login / Logout  Adicionados novos métodos na Servlet API para tratamento de login e logout da aplicação  Todo processo de login e logout da aplicação pode ser manipulado através de programação   Não tem mais necessidade da definição <login-config>  Métodos disponíveis   HttpServletRequest.login(String username, String password)   HttpServletRequest.authenticate(HttpServletResponse)   HttpServletRequest.logout() Globalcode Slide 37
  • 38. Java Servlet 3.0 •  Asynchronous Support  Modelo avançado para execução the Threads  Servlet não precisa mais esperar pela resposta de um outro recurso demorado para que sua Thread possa continuar executando  Exemplos para utilização   Conexões JDBC não disponíveis, retorno JMS, processos longos  Servlets e Filters suportam esta funcionalidade, mas devem ser sinalizados como assíncronos  Para sinalizar suporte a este mecanismo   @WebServlet(asynchSupported=true)   <async-supported>true</async-supported>   registration.setAsyncSupported(true); Globalcode Slide 38
  • 39. Java Servlet 3.0 •  Asynchronous Support Globalcode Slide 39
  • 40. Java Servlet 3.0 •  Asynchronous Support Globalcode Slide 40
  • 41. Java Servlet 3.0 •  Asynchronous Support Globalcode Slide 41
  • 42. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 42
  • 43. JavaServer Faces (JSF) •  Características  Framework para implementação de interfaces gráficas das aplicações Web baseado no modelo de componentes  Incorpora características de um framework MVC para Web e um modelo de interfaces baseados em eventos   Separação entre visualização e regras de negócio   Visualização pode ser feita por diferente renderizadores  Padrão de implementação para camada Web   Especificação Java EE  Amplo suporte das IDEs (Eclipse, NetBeans)   “Toolability = Ferramentabilidade” Globalcode Slide 43
  • 44. JavaServer Faces (JSF) J2EE Web Container J2EE EJB Container JavaServer Faces Controller View Model Servlet Java Custom JavaBeans EJB Server Tag Pages Globalcode Slide 44
  • 45. JavaServer Faces (JSF) 2.0 •  Novos Recursos  Configuração por Anotações  Integração com Facelets  AJAX Support  Composite Components  Novas Regras de Navegação  View Parameters Globalcode Slide 45
  • 46. JavaServer Faces (JSF) 2.0 •  Configuração por Anotações  @ManagedBean  @ManagedProperty  JSF Scopes   @ApplicationScoped, @RequestScoped, @SessionScoped, @NoneScoped, @ViewScoped, @CustomScoped  @FacesConverter  @FacesValidator  @FacesRenderer  @FacesBehavior  @ResourceDependency  @ListenerFor Globalcode Slide 46
  • 47. JavaServer Faces (JSF) 2.0 •  @ManagedBean Globalcode Slide 47
  • 48. JavaServer Faces (JSF) 2.0 •  @FacesConverter Globalcode Slide 48
  • 49. JavaServer Faces (JSF) 2.0 •  @FacesValidator Globalcode Slide 49
  • 50. JavaServer Faces (JSF) 2.0 •  @FacesBehavior •  @FacesRenderer Globalcode Slide 50
  • 51. JavaServer Faces (JSF) 2.0 •  Integração com Facelets  Define o padrão para templating e visualização  Utiliza XHTML ao invés de JSP   JSP encontra-se @Deprecated   Não podemos adicionar código Java no XTHML  Incorporação das classes do Facelets na JSF API  Mantém compatibilidade com versões anteriores  Definido pela biblioteca (ui)   http://java.sun.com/jsf/facelets  Principais Facelets tags   <ui:composition>   <ui:define>   <ui:insert>   <ui:param> Globalcode Slide 51
  • 52. JavaServer Faces (JSF) 2.0 Globalcode Slide 52
  • 53. JavaServer Faces (JSF) 2.0 •  AJAX Support  Suporte à processamento de requisições AJAX integrado ao ciclo de vida dos componentes JSF  Inspirado nos frameworks RichFaces, IceFaces, DynaFaces…  Define uma Javascript API padronizada   Homologada na Open AJAX Alliance   Suporta AJAX request, callbacks, error handling  Define a tag <f:ajax> para suporte AJAX aos componentes Globalcode Slide 53
  • 54. JavaServer Faces (JSF) 2.0 •  AJAX Support  Javascript API Globalcode Slide 54
  • 55. JavaServer Faces (JSF) 2.0 •  AJAX Support  <f:ajax> Tag Globalcode Slide 55
  • 56. JavaServer Faces (JSF) 2.0 •  Composite Components  Define uma maneira facilitada para criação e extensão de componentes JSF  Promove a reusabilidade visual  Suporte facilitado pelas IDEs (Eclipse, NetBeans)  Definido pela biblioteca (cc)   http://java.sun.com/jsf/composite  Principais tags   <cc:implementation>   <cc:interface>   <cc:attribute>   <cc:actionSource> Globalcode Slide 56
  • 57. JavaServer Faces (JSF) 2.0 •  Composite Components Globalcode Slide 57
  • 58. JavaServer Faces (JSF) 2.0 •  Composite Components Globalcode Slide 58
  • 59. JavaServer Faces (JSF) 2.0 •  Novas Regras de Navegação  Navegação Condicional   Possibilidade de mapeamento no faces-config.xml, somente realizando o redirecionamento com base em um condicional Globalcode Slide 59
  • 60. JavaServer Faces (JSF) 2.0 •  Novas Regras de Navegação  Navegação Implícita   Modelo de navegação direcionando o retorno da ação para uma view específica, através do nome Globalcode Slide 60
  • 61. JavaServer Faces (JSF) 2.0 •  View Parameters  Propagação de request parameters usando HTTP GET  Possibilidade de criação de Bookmarkable URLs  Principais tags   <f:metadata> –  Deve ser incluída dentro da tag <f:view>   <f:viewParam> –  Associa os request GET parameters com o JSF model –  Suporta Converters, Validators, etc   <h:link>   <h:button> Globalcode Slide 61
  • 62. JavaServer Faces (JSF) 2.0 •  View Parameters   http://server/view.xhtml?dept=mens&category=sport&sort=2 Globalcode Slide 62
  • 63. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 63
  • 64. Injeção de Dependência (IoC) •  Mecanismo de “injeção” de recursos necessários a um componente de forma automática  Sem a presença de instruções explícitas para acessar o recurso •  Exemplo:  O componente de negócios A depende do componente de negócios B e do pool de conexões C. B A C Globalcode Slide 64
  • 65. Injeção de Dependência (IoC) •  Sem injeção de dependência:  Código fonte do componente A contém instruções para “buscar” o componente B e o recurso C lookups Serviço de Nomes A “ejb/componenteB” “jdbc/dataSourceC” B C Globalcode Slide 65
  • 66. Injeção de Dependência (IoC) •  Com injeção de dependência: class ComponenteA { @EJB(name=“ejb/componenteB”) InterfaceB b; @Resource(name=“jdbc/dataSourceC”) DataSource c; } injeção Serviço de Nomes A “ejb/componenteB” “jdbc/dataSourceC” B C Globalcode Slide 66
  • 67. Injeção de Dependência (IoC) •  Exemplo de Utilização (Java EE 5) Globalcode Slide 67
  • 68. Context Dependency Injection (CDI) •  O que é CDI (JSR-299)?  Novo modelo para gerenciamento de injeção de dependência (IoC) e de escopos de aplicação  Também conhecido como “Web Beans”  Integra as camadas web e transacional da aplicação  Facilita a implementação das aplicações que utilizam tecnologias como JSF e EJB  Para utilizar basta adicionar o arquivo beans.xml no diretório de configuração da aplicação (WEB-INF , META-INF) Globalcode Slide 68
  • 69. Context Dependency Injection (CDI)  Quem pode receber injeção ?   Managed Beans   EJB, Interceptor   Servlet, Filter, *Listener, JSP Tag Handler   Endpoints JAX-WS e Handlers  O que pode ser injetado ?   Referências a EJBs e a Web Services   DataSource JDBC   Destination e ConnectionFactory JMS   UserTransaction   EntityManager (JPA)   Remote EJB references   ManagedBeans (POJO)   Objetos retornados por @Produces Globalcode Slide 69
  • 70. Context Dependency Injection (CDI) •  Novos Recursos  Injection Points  Producer Methods and Fields  Qualifiers  Alternatives  Expression Language Names  Scopes and Contexts   @ApplicationScoped, @RequestScoped, @SessionScoped,   @ConversationScoped  Interceptors  Stereotypes  Events Globalcode Slide 70
  • 71. Context Dependency Injection (CDI) •  Injection Points - @Inject Globalcode Slide 71
  • 72. Context Dependency Injection (CDI) •  Producer Methods and Fields - @Produces Globalcode Slide 72
  • 73. Context Dependency Injection (CDI) •  Qualifiers - @Qualifier Globalcode Slide 73
  • 74. Context Dependency Injection (CDI) •  Alternatives - @Alternative Globalcode Slide 74
  • 75. Context Dependency Injection (CDI) •  Expression Language Names - @Named Globalcode Slide 75
  • 76. Context Dependency Injection (CDI) •  Scopes and Contexts  Define um modelo de escopos extensível  Podemos criar um @Singleton bean  Dependent scope - @Dependent   Escopo padrão de todas classes   Significa que o objeto “injetado” encontra-se no mesmo escopo e tem o mesmo ciclo de vida do objeto cliente  Outros escopos disponíveis   @ApplicationScoped, @RequestScoped –  Para qualquer web requests, web service, RMI, EJB   @SessionScoped –  Para qualquer servlet   @ConversationScoped –  Para JSF requests Globalcode Slide 76
  • 77. Context Dependency Injection (CDI) •  Scopes and Contexts Globalcode Slide 77
  • 78. Context Dependency Injection (CDI) •  Scopes and Contexts - @ConversationScoped Globalcode Slide 78
  • 79. Context Dependency Injection (CDI) •  Interceptors Globalcode Slide 79
  • 80. Context Dependency Injection (CDI) •  Stereotypes - @Stereotype Globalcode Slide 80
  • 81. Context Dependency Injection (CDI) •  Events Globalcode Slide 81
  • 82. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 82
  • 83. Enterprise JavaBeans (EJB) •  Características  Plataforma para criação de aplicações de negócio portáveis, robustas e reutilizáveis usando a linguagem Java  Componentes para construir aplicações sem precisar reinventar uma série de recursos e serviços   Transação, Segurança, Persistencia  Modelo alto nível de objetos distribuídos   Computação distribuída  Pode ser utilizado em aplicações Web e não Web  É o CICS do Java Globalcode Slide 83
  • 84. Enterprise JavaBeans (EJB) Infra Estrutura do Container EJB Controle Transacional Escalabilidade Segurança EJB Session Bean Queues Data Topics Sources Environment Entries Globalcode Slide 84
  • 85. Enterprise JavaBeans (EJB) •  Tipos de EJB:  Session Bean   Representa um processo de negócio  Message-Driven Bean   Trabalha de forma assíncrona  Entity Bean   Representa um objeto persistente   Definido pela especificação JPA Globalcode Slide 85
  • 86. Enterprise JavaBeans (EJB) 3.1 •  Novos Recursos  EJB Lite  Empacotamento Simplificado  Interface Opcional  Singleton EJB  Timer Service  Métodos Assíncronos  Nomes JNDI Padronizados  Embeddable API Globalcode Slide 86
  • 87. Enterprise JavaBeans (EJB) 3.1 •  EJB Lite  Sub-conjunto de funcionalidades direcionadas para deploy dos EJBs no container Java EE Web Profile (.war) EJB Lite EJB Full •  Local Session Beans •  Message-Driven Beans (MDB) •  CMT / BMT •  Web Service Endpoints •  Segurança Declarativa •  2.x / 3.x Remove View •  Interceptors •  Inter-operabilidade com RMI-IIOP •  Timer service •  Chamada assíncrona à metodos •  2.x Local View •  CMP / BMP Entity Beans Globalcode Slide 87
  • 88. Enterprise JavaBeans (EJB) 3.1 •  Empacotamento Simplificado  Possibilita o deploy de componentes EJBs através de um .war  Somente disponível para os EJB Lite  ejb-jar.xml não é mais necessário Java EE 6 Java EE 5 Globalcode Slide 88
  • 89. Enterprise JavaBeans (EJB) 3.1 •  Interface Opcional  No-interface = Local View Globalcode Slide 89
  • 90. Enterprise JavaBeans (EJB) 3.1 •  Singleton EJB  Define um EJB que implementa o padrão Singleton   Uma única instância por aplicação enterprise  Abstrai a implementação deste padrão dentro do ambiente “enterprise”   Publicação no diretório JNDI  Suporta estratégias e configurações para compartilhamento no acesso (locking)  Anotações   @Singleton   @Lock   @AccessTimeout   @ConcurrencyManager Globalcode Slide 90
  • 91. Enterprise JavaBeans (EJB) 3.1 •  Singleton EJB Globalcode Slide 91
  • 92. Enterprise JavaBeans (EJB) 3.1 •  Singleton EJB Globalcode Slide 92
  • 93. Enterprise JavaBeans (EJB) 3.1 •  Timer Service  Define uma estrutura para execução baseada em calendários  Semântica baseada nos processos CRON  Criação feita pelo container no deploy da aplicação  Pode ser especificado por anotação ou através do ejb-jar.xml  Relativo ao current TimeZone  Sintaxe dos atributos   minute = “30”   month = “Jan, Jul, Dec”   dayOfWeek = “Mon-Fri”   dayOfMonth = “Last Mon”   hour = “*”   minute = “*/10” Globalcode Slide 93
  • 94. Enterprise JavaBeans (EJB) 3.1 •  Timer Service  Processa na última sexta-feira de todo mês às 20:30 hrs no horário local de São Paulo Globalcode Slide 94
  • 95. Enterprise JavaBeans (EJB) 3.1 •  Métodos Assíncronos  Mecanismo simples para realizar chamadas assíncronas para uma aplicação enterprise (sem utilizar MDBs)  Disponível para utilização em Stateful, Stateless e Singleton EJBs  Definido pela anotação @Asynchronous   Pode ser utilizada pela classe ou por método  Retorna um objeto Future<T> que representa o resultado em processamento assíncrono   Future.isDone()   Future.isCancelled()   Future.get()   Future.cancel(boolean) Globalcode Slide 95
  • 96. Enterprise JavaBeans (EJB) 3.1 •  Métodos Assíncronos Globalcode Slide 96
  • 97. Enterprise JavaBeans (EJB) 3.1 •  Nomes JNDI Padronizados  Definição padronizada de nomes para “lookup” dos EJBs remotos e locais  Eleva a portabilidade de aplicações clientes  Lookup global   java : global [/<app-name>] /<module-name> /<ejb-name>  Lookup dentro da aplicação   java : app [/<module-name>] /<ejb-name>  Lookup dentro de um mesmo módulo (JAR, WAR)   java : module /<ejb-name> Globalcode Slide 97
  • 98. Enterprise JavaBeans (EJB) 3.1 •  Nomes JNDI Padronizados •  Se for realizado o deploy em “componentes.jar”  java:global/componentes/MyEJB  java:app/MyEJB  java:module/MyEJB Globalcode Slide 98
  • 99. Enterprise JavaBeans (EJB) 3.1 •  Embeddable API  Biblioteca (API) customizada para rodar componentes EJBs fora do container (servidor) Java EE  Implementa o mesmo comportamento (ciclo de vida, pooling, IoC) simulando um container Java EE  Ideal para utilização em testes unitários   Utilização de Mock components Globalcode Slide 99
  • 100. Enterprise JavaBeans (EJB) 3.1 •  Embeddable API Globalcode Slide 100
  • 101. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 101
  • 102. Java Persistence API (JPA) •  Características   Primeira especificação (padrão) de mapeamento de objetos Java para base de dados relacional   Integração com outros frameworks –  Hibernate é uma implementação de JPA –  TopLink Essencials é uma implementação de JPA (RI)   POJO (Plain Old Java Objects)  Entidades   Mapeamento via metadados (annotation Java 5)   Pode ser utilizado fora de containeres EJBs (ligthweigth container)   Uso de injeção de dependência ao invés de lookups JNDI Globalcode Slide 102
  • 103. Java Persistence API (JPA) Globalcode Slide 103
  • 104. Java Persistence API (JPA) 2.0 •  Novos Recursos  Standard Properties  Melhorias no Mapeamento OR   @ElementCollection, @CollectionTable, @OrderColumn   Orphan Removal  Melhorias na JPA-QL   CASE, NULLIF, COALESCE  Criteria API  Melhorias na API  Validação (Bean Validation)  Second-level Caching  Pessimistic Locking Globalcode Slide 104
  • 105. Java Persistence API (JPA) 2.0 •  Standard Properties Globalcode Slide 105
  • 106. Java Persistence API (JPA) 2.0 •  @ElementCollection (Basic Types) Globalcode Slide 106
  • 107. Java Persistence API (JPA) 2.0 •  @ElementCollection (Embeddable Types) Globalcode Slide 107
  • 108. Java Persistence API (JPA) 2.0 •  Maps Globalcode Slide 108
  • 109. Java Persistence API (JPA) 2.0 •  Embeddables com Relacionamentos Globalcode Slide 109
  • 110. Java Persistence API (JPA) 2.0 •  @OrderColumn Globalcode Slide 110
  • 111. Java Persistence API (JPA) 2.0 •  Orphan Removal Globalcode Slide 111
  • 112. Java Persistence API (JPA) 2.0 •  Melhorias na JPA-QL  INDEX   Utilizado para listas ordenadas  KEY, VALUE, ENTRY   Utilizado para manipulação de Maps  CASE, COALESCE, NULLIF   Utilizado para CASE expressions  TYPE   Utilizado para restringir polimorfismo Globalcode Slide 112
  • 113. Java Persistence API (JPA) 2.0 •  Melhorias na JPA-QL Globalcode Slide 113
  • 114. Java Persistence API (JPA) 2.0 •  Criteria API  Biblioteca (API) para criação de queries dinâmicas via programação (métodos)  Principais Classes   CriteriaBuilder –  Criação de queries, seleções, ordenação   CriteriaQuery –  Adiciona, substitui, navega nos elementos que compões a query   Root –  Define as query roots   Join, ListJoin, MapJoin… –  Joins partindo de um root ou de joins já existentes   Path –  Navegação patindo de um root, join ou outro path   Subquery Globalcode Slide 114
  • 115. Java Persistence API (JPA) 2.0 •  Criteria API Globalcode Slide 115
  • 116. Java Persistence API (JPA) 2.0 •  Melhorias na API Globalcode Slide 116
  • 117. Java Persistence API (JPA) 2.0 •  Validação (Bean Validation)  Definição de um novo modelo de validação para as entidades utilizando um conjunto de anotações definidas pela JSR 303 (Bean Validation)  Inspirado no projeto Hibernate Validator  Validação automática durante os eventos de ciclo de vida   PrePersist   PreUpdate   PreRemove Globalcode Slide 117
  • 118. Java Persistence API (JPA) 2.0 •  Validação (Bean Validation) Globalcode Slide 118
  • 119. Java Persistence API (JPA) 2.0 •  Second-level Caching  Compartilha a instância da entidade entre vários persistence contexts (EntityManager) utilizados pela aplicação Globalcode Slide 119
  • 120. Java Persistence API (JPA) 2.0 •  Second-level Caching  JPA 1.0 não definiu nenhum suporte à second-level cache  JPA 2.0 especificou um suporte básico para as estas operações de cache, através da Cache API Globalcode Slide 120
  • 121. Java Persistence API (JPA) 2.0 •  Pessimistic Locking  JPA 1.0 somente oferece suporte à Lock Optimistic  Encapsula os locks realizados no banco de dados  Lock Modes   PESSIMISTIC_READ (lock compartilhado)   PESSIMISTIC_WRITE (lock exclusivo)   PESSIMISTIC_FORCE_INCREMENT (lock versionado) Globalcode Slide 121
  • 122. Agenda "   Plataforma Java EE "   Principais Tecnologias (APIs) "   Profiles "   Java Servlet 3.0 "   JSF 2.0 "   CDI "   EJB 3.1 "   JPA 2.0 "   Comparativo de Versões "   Perguntas e Respostas Globalcode Slide 122
  • 124. Comparativo de Versões •  Java EE 1.4   Novembro de 2003   EJB 2.1, Servlet 2.4 e JSP 2.0   Principais problemas   Deployment descriptor   Interfaces   Entity beans   Complexidade de aprendizado e desenvolvimento •  Java EE 5   Maio de 2006   Aumentar a produtividade e facilitar o desenvolvimento   Principais mudanças   Anotações   Enterprise JavaBeans 3.0   Java Persistence API (JPA)   Injeção de dependência   Inclusão de JSF 1.2   Novas versões das APIs existentes Globalcode Slide 124
  • 125. Comparativo de Versões •  Java EE 6  Dezembro 2009;  Maior flexibilidade para a plataforma;  Principais mudanças   Java Servlet 3.0;   EJB 3.1;   JPA 2.0;   JSF 2.0;   CDI;   Bean Validation 1.0;   Profiles (deployment);   Novas versões das APIs existentes. Globalcode Slide 125
  • 126. Perguntas & Respostas ? Globalcode Slide 126
  • 127. Mini-curso Gratuito Agradecemos a presença! http://open4education.googlecode.com/ Globalcode Slide 127