Your SlideShare is downloading. ×
0
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Java4web
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Java4web

106

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
106
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com Eclipse Programa¸˜o para Web ca Java EE Ivo Calado Instituto Federal de Educa¸˜o, Ciˆncia e Tecnologia de Alagoas ca e 12 de Novembro de 20121 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 2. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseRoteiro 1 Introdu¸˜o ca 2 Java EE (Enterprise Edition) 3 Desenvolvimento Java Web com Eclipse2 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 3. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseObserva¸˜o sobre o conte´do ca u Parte deste material ´ baseada na apostila FJ-21 - Java para e Desenvolvimento Web desenvolvido pela Caelum (www.caelum.com.br)3 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 4. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseConte´do est´tico X Conte´do dinˆmico u a u aRevendo as diferen¸as c Existem v´rias diferen¸as entre aplica¸˜es Web de conte´do a c co u est´tico e conte´do dinˆmico. Quais seriam elas? a u a4 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 5. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseConte´do est´tico X Conte´do dinˆmico u a u aRevendo as diferen¸as c Existem v´rias diferen¸as entre aplica¸˜es Web de conte´do a c co u est´tico e conte´do dinˆmico. Quais seriam elas? a u a Momento da gera¸˜o ca Contexto da requisi¸˜o (conte´do personalizado) ca u Linguagem utilizada Armazenamento em cache Web4 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 6. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipsePrograma¸˜o Client-Side x Server-Side caRevendo as diferen¸as c Server-side A programa¸˜o server-side ´ utilizada para gerar a informa¸˜o ca e ca a ser enviada ´ E transparente ao usu´rio! a5 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 7. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipsePrograma¸˜o Client-Side x Server-Side caRevendo as diferen¸as c Server-side A programa¸˜o server-side ´ utilizada para gerar a informa¸˜o ca e ca a ser enviada ´ E transparente ao usu´rio! Ele enxerga apenas o HTML! a Diversas linguagens de programa¸˜o podem ser utilizadas ca (PHP, Java, Python, C++!) Client-side Client-side ´ utilizado para manipular a informa¸˜o recebida e ca O usu´rio tem acesso a todo o c´digo! a o Existem basicamente dois tipos de suporte a programa¸˜o: ca JavaScript e Applets!5 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 8. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipsePrograma¸˜o Client-Side x Server-Side caQuest˜o de segurana¸a a c Porque uma aplica¸˜o servidora deve realizar a mesma checagem ca realizada por uma aplica¸˜o cliente? ca6 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 9. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipsePrograma¸˜o Client-Side x Server-Side caQuest˜o de segurana¸a a c Porque uma aplica¸˜o servidora deve realizar a mesma checagem ca realizada por uma aplica¸˜o cliente? ca Como o c´digo cliente est´ dispon´ a requisi¸˜o a ser enviada o a ıvel ca pode ser manipulada alterando o formato da requisi¸˜o! ca6 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 10. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseExtendendo a arquitetura JavaExtendendo a arquitetura Java At´ agora vocˆs viram a plataforma Java executada sobre apenas e e uma plataforma, por´m esta n˜o ´ a unica! e a e ´7 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 11. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseExtendendo a arquitetura JavaExtendendo a arquitetura Java At´ agora vocˆs viram a plataforma Java executada sobre apenas e e uma plataforma, por´m esta n˜o ´ a unica! Existem trˆs e a e ´ e plataformas para desenvolvimento com a linguagem Java7 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 12. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseExtendendo a arquitetura JavaExtendendo a arquitetura Java At´ agora vocˆs viram a plataforma Java executada sobre apenas e e uma plataforma, por´m esta n˜o ´ a unica! Existem trˆs e a e ´ e plataformas para desenvolvimento com a linguagem Java Java SE: Aplica¸˜es Desktop co Java Me: aplica¸˜es m´veis (A plataforma Android n˜o co o a implementa essa especifica¸˜o!) ca Java EE: Aplica¸˜es corporativas (Nosso foco! :)) co7 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 13. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caO que ´? e Consiste de uma s´rie de especifica¸˜es bem detalhadas e co definidas pela Sun (agora Oracle), dando uma receita de como deve ser implementado um Software8 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 14. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caO que ´? e Consiste de uma s´rie de especifica¸˜es bem detalhadas e co definidas pela Sun (agora Oracle), dando uma receita de como deve ser implementado um Software Deve-se da ˆnfase ao termo especifica¸˜o e n˜o e ca a implementa¸˜o! ca8 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 15. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caO que ´? e Consiste de uma s´rie de especifica¸˜es bem detalhadas e co definidas pela Sun (agora Oracle), dando uma receita de como deve ser implementado um Software Deve-se da ˆnfase ao termo especifica¸˜o e n˜o e ca a implementa¸˜o! Mas, porque isso? ca Diversos grupos podem fazer a implementa¸˜o da mesma ca esperifica¸˜o (analogia ` classes abstratas e concretas!) ca a Antigamente conhecida como J2EE8 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 16. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caJava EE ´ apenas uma especifica¸˜o de uma linguagem de e caprograma¸˜o? ca9 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 17. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caJava EE ´ apenas uma especifica¸˜o de uma linguagem de e caprograma¸˜o? ca ˜ NAO! Java EE pode ser considerada uma especifica¸˜o bastante ca complexa Envolve conceitos que v˜o al´m de uma linguagem de a e programa¸˜o, como: persistˆncia em banco de dados, ca e transa¸˜o, acesso remoto, web services, gerenciamento de ca threads, gerenciamento de conex˜es HTTP, cache de objetos, o gerenciamento da sess˜o web, balanceamento de carga etc a9 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 18. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseIntrodu¸˜o caEspecifica¸oes Java EE c˜ Como discutido, existem diversas especifica¸oes que fazem parte c do Java EE. Eis algumas: JavaServer Pages (JSP), Java Servlets, Java Server Faces (JSF) Enterprise Javabeans Components (EJB) e Java Persistence API (JPA). (objetos distribu´ ıdos, clusters, acesso remoto a objetos etc) Java API for XML Web Services (JAX-WS) Java Autenthication and Authorization Services Java Message Services Java Naming and Directory Interface10 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 19. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseServidores de aplica¸oes c˜O que s˜o? a Servidores de aplica¸˜o Java EE s˜o implementa¸˜es da ca a co especifica¸˜o Java EE ou de parte dela ca Recebem esse nome por serem software que tem papel de servir sua aplica¸˜o para auxilia-la com servi¸os de ca c infraestrutura A partir da vers˜o Java EE 6 passou-se a utilizar o termo a application server web profile para os servidores que n˜oa oferecem suporta ` todas especifica¸˜es! a co11 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 20. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseServidores de aplica¸oes c˜Exemplos de servidores de aplica¸˜es co Glassfish: solu¸˜o desenvolvida pela Sun/Oracle. Trata-se de ca uma op¸˜o open source e gratuita por´m n˜o ´ l´ ca e a e ıder de mercado JBoss: ´ um dos l´ e ıderes do mercado e tem a vantagem de ser gratuito e open source. Bastante utilizado por aplica¸˜es que co desejam um alto grau de escalabilidade! Apache Tomcat: solu¸ao focada nas especifica¸˜es Web, c co mais especificamente JSP e Servlets No nosso curso utilizaremos o servidor Tomcat mas todo conhecimento adquirido aqui pode ser aplicado com facilidade para os outros servidores compat´ ıveis, mudando apenas a forma de configur´-los. a12 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 21. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseServidores de aplica¸oes c˜Instalando o Tomcat Baixe o Tomcat em http://tomcat.apache.org Mesmo no windows, dˆ preferˆncia a vers˜o zip, para vocˆ e e a e entender melhor o processo de inicializa¸˜o do servidor ca A vers˜o execut´vel ´ apenas um wrapper para executar a a a e JVM, j´ que o Tomcat ´ 100% Java. a e Entre no diret´rio de instala¸˜o e execute o script startup.sh o ca para iniciar o servidor Entre no diret´rio de instala¸˜o e execute o script o ca shutdown.sh para parar o servidor13 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 22. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseServidores de aplica¸oes c˜O plugin WTP O WTP, Web Tools Platform, ´ um conjunto de plugins para e o Eclipse que auxilia o desenvolvimento de aplica¸˜es Java co EE, em particular, de aplica¸˜es Web co Cont´m desde editores para JSP, CSS, JS e HTML at´ e e perspectivas e jeitos de rodar servidores de dentro do Eclipse Para instalar o eclipse com WTP basta ir no site do Eclipse e selecionar a op¸˜o Java EE Developers ca14 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 23. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseServidores de aplica¸oes c˜Configurando o Tomcat no WTP Mude a perspectiva do Eclipse para Java (e n˜o Java EE, por a enquanto) Abra a View de Servers na perspectiva atual. Aperte Ctrl + 3 e digite Servers Clique com o bot˜o direito dentro da aba Servers e v´ em a a New > Server Selecione o Apache Tomcat 6.0 e clique em Next Na pr´xima tela, selecione o diret´rio onde vocˆ o o e descompactou o Tomcat e clique em Finish Na aba Servers, dˆ dois cliques no servidor Tomcat que uma e tela de configura¸˜o se abrir´. Localize a se¸˜o Server ca a ca Locations. Repare que a op¸˜o use workspace metadata est´ ca a marcada. Marque a op¸˜o Use Tomcat installation ca15 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 24. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseEtapa inicialCria¸˜o do projeto ca Para criar um novo projeto Java Web siga as seguintes etapas: V´ em New > Project e selecione Dynamic Web Project e a clique Next Defina o nome do projeto e a vers˜o do Tomcat a ser utilizada a e selecione Finish Na aba Servers, clique com o bot˜o direito no Tomcat e v´ a a em Add and Remove e selecione a aplica¸˜o para associ´-la a ca a um container Web16 / 17 Ivo Calado IFALPrograma¸˜o para Web ca
  • 25. Introdu¸˜o ca Java EE (Enterprise Edition) Desenvolvimento Java Web com EclipseEtapa inicialEstrutura do projeto src - c´digo fonte Java (.java) o build - onde o Eclipse compila as classes (.class) WebContent - content directory (p´ginas, imagens, css etc a v˜o aqui) a WebContent/WEB-INF/ - pasta oculta com configura¸˜es e co recursos do projeto WebContent/WEB-INF/lib/ - bibliotecas .jar WebContent/WEB-INF/classes/ - arquivos compilados s˜o a copiados para c´ a17 / 17 Ivo Calado IFALPrograma¸˜o para Web ca

×