Prof.: Carlos Hairon R. Gonçalves Programação WEB JSP JAVA SERVER PAGES Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves JSP - Introdução Designer x Desenvolvedor WEB Devem trabalhar de forma independente JSP = HTML + Código Java + Tags Especiais Parte Estática => Própria Página Parte Dinâmica => Gerada pelo código JSP Execução do lado do servidor WEB JSP, PHP e ASP Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves JSP - Introdução PHP (Personal Home Pages) Usa linguagem de script Baseada em C, mas com traços de C++,Java e Perl Suporta Orientação a Objetos Suporte a Banco de Dados ( MySQL, Sybase, Oracle e outros) De mais fácil desenvolvimento para pequenas aplicações que o JSP. Para grandes aplicações JSP é mais escalável. Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves JSP - Introdução ASP (Active Server Pages) Inicialmente apenas no IIS, mas o Apache já suporta ASP Usa scripts javaScript e vbScript JSP usa Java para suporte dinâmico e ASP usa Visual Basic JSP é mais portável. Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Execução de Código JSP Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Alo Mundo JSP <html> <head> <title>Exemplo JSP </title> </head> <body> <% String x = "Alo Mundo"; %> <%=x%> </body> </html> O .java gerado é colocado em um subdiretório do associado a aplicação vinculado ao /work do tomCat. Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Servlet Gerado package AloMund_00025JSP; . . . public class _0002fAloMundoJSP_0002fAloMundoJSP_0002ejspAloMundoJSP_jsp_0 extends HttpJspBase {. . . public void _jspService(HttpServletRequest request, HttpServletResponse response) . . . //Objetos ocultos out.write("<html>\r\n <head>\r\n <title>Exemplo JSP </title>\r\n </head>\r\n <body>\r\n "); String x = "Alo Mundo"; out.write("\r\n "); out.print(x); out.write("\r\n </body> \t\r\n</html>"); . . . Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Objetos Ocultos Você pode usar estes objetos dentro do arquivo JSP como se estivesse dentro de um servlet. Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Tags JSP Forma Geral <% Código JSP%> O primeiro caractere % pode ser seguido de outro caractere para determinar o sentido exato do código. Expressões <%= expressões %> <%= new java.util.Date() %> <%= request.getMethod%> Scriptlets <% Código Java%> Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Tags JSP - Exemplo <html> <head> <title>Exemplo JSP </title> </head> <body> <% int x = 10; int y = 15; int z = x+y; %> raiz de <%=x%>+<%=y%> = <%= Math.sqrt(z)%> </body> </html> Note que: O Sricptlet contém o trecho de código java Cada tag de Expressão (<%= %>) deve conter somente um comando Não se deve colocar o “;” para finalizar a expressão em <%= %> Expressões são convertidas em String e enviadas para o browser Prof.: Carlos Hairon R. Gonçalves
Tags JSP – Exemplo Forms <html> <head> <title>Exemplo Form JSP </title> </head> <body> <% String valor = request.getParameter("celcius"); if (valor !=null) { double f = Double.parseDouble(valor)*9/5+32; out.println("<P>"); out.println("<h2>Valor em Fahrenheit:"+f+"<h2><br>"); } %> <form action=ExForm.jsp method=POST> Celcius: <input type=text size=20 name=celcius><br> <input type=submit> </body> </html> Tags JSP – Exemplo Forms Prof.: Carlos Hairon R. Gonçalves
Prof.: Carlos Hairon R. Gonçalves Tags JSP Declarações <%! Código java %> <%! private int numAcesso = 0 %> Acessos desde carregada <%= numAcesso++%> Declarações deste tipo são variáveis de instância Declarações em Scriplets são variáveis locais Declarações de métodos <%! private double converte (double c) { return c*9/5 + 32 } %> Comentários <%-- Comentário --%> (JSP) ou <!-- Comentário --> (HTML) Prof.: Carlos Hairon R. Gonçalves