You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
<strong>Programação</strong> <strong>Java</strong><br />
<strong>para</strong> a <strong>Web</strong><br />
Décio Heinzelmann Luckow<br />
Alexandre Altair de Melo<br />
<strong>Novatec</strong>
Copyright © 2010 da <strong>Novatec</strong> Editora Ltda.<br />
Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998.<br />
É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização,<br />
por escrito, do autor e da Editora.<br />
Editor: Rubens Prates<br />
Capa: Victor Bittow<br />
Revisão gramatical: Lia Gabriele Regius<br />
Editoração eletrônica: Camila Kuwabata<br />
ISBN: 978-85-7522-238-6<br />
Histórico de impressões:<br />
Outubro/2010 Primeira edição<br />
<strong>Novatec</strong> Editora Ltda.<br />
Rua Luís Antônio dos Santos 110<br />
02460-000 – São Paulo, SP – Brasil<br />
Tel.: +55 11 2959-6529<br />
Fax: +55 11 2950-8869<br />
E-mail: novatec@novatec.com.br<br />
Site: www.novatec.com.br<br />
Twitter: twitter.com/novateceditora<br />
Facebook: facebook.com/novatec<br />
LinkedIn: linkedin.com/in/novatec<br />
Dados Internacionais de Catalogaç‹o na Publicaç‹o (CIP)<br />
(C‰mara Brasileira do Livro, SP, Brasil)<br />
Luckow, DŽcio Heinzelmann<br />
Programaç‹o <strong>Java</strong> <strong>para</strong> a <strong>Web</strong> / DŽcio Heinzelmann<br />
Luckow e Alexandre Altair de Melo. -- S‹o<br />
Paulo : <strong>Novatec</strong> Editora, 2010.<br />
Bibliografia.<br />
ISBN 978-85-7522-238-6<br />
1. Internet (Rede de computadores) 2. <strong>Java</strong><br />
(Linguagem de programaç‹o <strong>para</strong> computadores) 3.<br />
<strong>Web</strong> sites I. Melo, Alexandre Altair de. II.<br />
T’tulo.<br />
10-08728 CDD-005.133<br />
êndices <strong>para</strong> cat‡logo sistem‡tico:<br />
1. <strong>Java</strong> : Linguagem de programaç‹o :<br />
Computadores : Processamento de dados<br />
005.133<br />
CRM20100922
24<br />
capítulo 1<br />
Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Este capítulo tem como objetivo conduzir o leitor na montagem de um ambiente de<br />
desenvolvimento de um aplicativo web usando <strong>Java</strong>, Apache Tomcat, Eclipse e MySQL.<br />
Descreveremos como realizar a instalação e configuração do ambiente, bem como<br />
explicaremos o uso de cada uma dessas ferramentas. Ao final do capítulo teremos<br />
um miniaplicativo de teste executando nesse ambiente e você já estará pre<strong>para</strong>do<br />
<strong>para</strong> iniciar o projeto do aplicativo financeiro pessoal, que será o projeto mostrado<br />
ao longo do livro.<br />
1.1 Seleção das ferramentas<br />
Os critérios que mais contribuíram <strong>para</strong> selecionar as ferramentas que utilizaremos<br />
ao longo do livro são simples: popularidade e experiência. Além das ferramentas selecionadas<br />
estarem entre as mais populares, elas fazem parte do dia-a-dia dos autores.<br />
Isso com certeza possibilita criar um texto ao mesmo tempo técnico e composto de<br />
dicas, que são baseadas na experiência adquirida pelo uso de tais ferramentas.<br />
Comentar sobre a escolha de quais ferramentas empregar em um projeto de software<br />
envolve vários aspectos. Entretanto, um ponto que sempre deve ser levado em consideração<br />
é o envolvimento da comunidade de desenvolvedores em determinado projeto.<br />
Nisso o <strong>Java</strong> tem um dos seus pontos fortes, pois além de instituições privadas que<br />
criam IDEs, por exemplo, existe uma comunidade muito forte e atuante nos projetos<br />
criados <strong>para</strong> a plataforma. As ferramentas Eclipse, Apache Tomcat e MySQL são<br />
exemplos que têm comunidades altamente atuantes, que muito contribuem <strong>para</strong><br />
sua evolução.<br />
Além disso, se você desenvolver seu projeto usando o Apache Tomcat e o MySQL,<br />
encontrará com mais facilidade algum serviço de hospedagem que tenha exatamente<br />
essa configuração. Não basta ter uma excelente ideia de um novo produto <strong>para</strong> a internet<br />
e executá-lo somente em seu computador doméstico. É preciso pensar no futuro:<br />
seu produto pode ser o próximo a ser comprado por alguns milhões de dólares por<br />
alguma megaempresa da internet!
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Se você ainda não está pensando tão alto e quer mesmo explorar tudo o que a comunidade<br />
<strong>Java</strong> oferece, existem outras ferramentas interessantes que você poderá adotar<br />
em projetos futuros. Novas ferramentas surgem a cada dia, e isso é o combustível<br />
que faz a evolução constante da comunidade <strong>Java</strong>. Apesar de já termos definidas as<br />
ferramentas principais que utilizaremos neste livro, vamos listar a seguir algumas<br />
alternativas interessantes que você poderá explorar posteriormente.<br />
IDE Descrição<br />
NetBeans Ferramenta de desenvolvimento <strong>Java</strong> oficial da Sun (www.netbeans.org).<br />
JDeveloper Ferramenta de desenvolvimento <strong>Java</strong> oficial da Oracle (www.oracle.<br />
com/technology/jdev).<br />
Banco de dados Descrição<br />
HypersonicSQL Banco de dados 100% <strong>Java</strong>. Tem vários modos de execução, entre eles,<br />
Standalone, que permite a utilização do banco de dados sem precisar<br />
de instalação, diretamente a partir do do JAR (http://hsqldb.org/).<br />
Apache Derby Segue a mesma linha do HSQL e foi recentemente incorporado à distribuição<br />
do <strong>Java</strong>, sendo chamado de <strong>Java</strong>DB. Pode ser utilizado <strong>para</strong> execução<br />
em dispositivos móveis, como celulares (http://developers.sun.com/javadb/).<br />
PostgreSQL Forte concorrente do MySQL (www.postgresql.org/).<br />
Servidor web <strong>Java</strong><br />
Jetty Servidor web <strong>Java</strong> concorrente do Apache Tomcat (http://www.mortbay.<br />
org/jetty/).<br />
JBoss<strong>Web</strong> Servidor web <strong>Java</strong>, uma versão personalizada do Apache Tomcat, pela<br />
JBoss (http://jboss.org/jbossweb).<br />
A seguir, vamos instalar e configurar cada uma das ferramentas que compõem nosso<br />
ambiente de desenvolvimento.<br />
1.2 Linguagem <strong>Java</strong><br />
A linguagem <strong>Java</strong> começou a surgir em 1991 na Sun Microsystems. Inicialmente era<br />
parte de outro projeto, chamado Green Project, que tinha como objetivo possibilitar<br />
a convergência entre computador, equipamentos eletrônicos e eletrodomésticos.<br />
Na época a linguagem era chamada de Oak (em português, “carvalho”), pois era essa<br />
árvore que James Gosling avistava da janela da sede do projeto.<br />
O resultado do projeto foi um controle remoto chamado *7 (StarSeven), que tinha<br />
uma interface gráfica sensível ao toque e era capaz de interagir com diversos equipamentos.<br />
A linguagem Oak, na época, surgiu justamente <strong>para</strong> controlar internamente<br />
esse equipamento.<br />
25
26<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
O controle remoto em si não vingou: ele estava muito a frente de seu tempo. Na<br />
época, as empresas de TV a cabo e vídeo por demanda não tinham condições de<br />
viabilizar o negócio.<br />
Depois disso, James Gosling foi encarregado de adaptar a linguagem Oak <strong>para</strong> a<br />
internet, surgindo em 1995, assim, a plataforma <strong>Java</strong>.<br />
Umas das principais diferenças entre a plataforma <strong>Java</strong> e as demais linguagens existentes<br />
na época é que o <strong>Java</strong> é executado sobre uma JVM, ou <strong>Java</strong> Virtual Machine.<br />
Qualquer plataforma de hardware ou equipamento eletrônico que possa executar<br />
uma máquina virtual conseguirá executar <strong>Java</strong>. Isso justifica o slogan “write once,<br />
run anywhere”, ou, em português, “escreva uma vez, rode em qualquer lugar”.<br />
1.2.1 Instalação do <strong>Java</strong><br />
A versão do <strong>Java</strong> a ser instalada pode ser qualquer uma a partir da 5. No momento<br />
em que este livro estava sendo escrito a versão mais recente era <strong>Java</strong> 6. O arquivo<br />
<strong>para</strong> instalação do <strong>Java</strong> pode ser obtido em http://java.sun.com, acionando a opção<br />
<strong>Java</strong> SE no menu Downloads, ou diretamente em http://java.sun.com/javase/downloads/.<br />
Nessas páginas serão listados todos os tipos de pacotes de instalação do <strong>Java</strong> disponíveis.<br />
As duas principais versões disponíveis são <strong>Java</strong> SE (ou JRE) e JDK, conforme a<br />
figura 1.1. O pacote JRE (sigla de <strong>Java</strong> Runtime Environment) é o pacote mínimo necessário<br />
<strong>para</strong> a execução de aplicativos <strong>Java</strong>. Já o pacote JDK (sigla de <strong>Java</strong> Development<br />
Kit) é o pacote necessário <strong>para</strong> o desenvolvimento de aplicativos <strong>Java</strong>.<br />
Figura 1.1 – Opção de pacotes <strong>para</strong> instalação do <strong>Java</strong>.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Em nosso caso é necessário obter o pacote JDK (que também inclui o JRE). Dessa<br />
forma, clique em Download na opção JDK 6 Update X. Na página seguinte, selecione<br />
o ambiente (sistema operacional) de destino da instalação do pacote e a opção de<br />
idioma. Prossiga o download conforme as instruções do site.<br />
1.2.1.1 Instalação no Windows<br />
Depois de realizado o download, acione o arquivo obtido e a instalação se iniciará.<br />
Na primeira tela exibida, que contém os termos da licença de uso do <strong>Java</strong>, clique<br />
em Accept. A tela seguinte permite configurar as opções que serão instaladas, conforme<br />
a figura 1.2. Mantenha todas as opções. Você pode perceber a presença dos itens<br />
Development Tools, Demos and Samples e Source Code, que são especificamente <strong>para</strong> o desenvolvimento<br />
de aplicativos <strong>Java</strong>. O item Public JRE é a instalação do <strong>Java</strong> Runtime<br />
Environment que já havíamos comentado e será instalado junto com o <strong>Java</strong> JDK. O<br />
último item, <strong>Java</strong> DB, é o projeto Apache Derby, o banco de dados que comentamos<br />
ter sido incorporado à distribuição do <strong>Java</strong>. Se preferir, mude o local de instalação<br />
do <strong>Java</strong>, mas recomendamos manter o padrão.<br />
Figura 1.2 – Itens do <strong>Java</strong> a serem instalados.<br />
Na tela seguinte, a instalação se iniciará, exibindo uma barra com o progresso da<br />
instalação. Depois de concluída essa etapa o instalador perguntará se você deseja<br />
instalar a JRE (que foi marcada como opção da figura 1.2). Aceite a instalação e siga<br />
todos os passos mantendo o padrão.<br />
27
28<br />
Configuração<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Essa etapa da configuração só será necessária caso tenhamos que executar o <strong>Java</strong> por<br />
linha de comando. A princípio isso não é obrigatório, pois utilizaremos a ferramenta<br />
Eclipse <strong>para</strong> fazer o desenvolvimento <strong>Java</strong>. Porém, é interessante manter essa configuração<br />
<strong>para</strong> uma necessidade futura.<br />
No Windows, clique em Iniciar ➤ Painel de Controle ➤ Sistema. Clique na guia Avançado e no<br />
botão Variáveis de Ambiente, conforme a figura 1.3.<br />
Figura 1.3 – Tela de acesso às variáveis de ambiente.<br />
A tela seguinte (Figura 1.4) exibe as variáveis de ambiente do Windows. Agora vamos<br />
criar a variável que define o local de instalação do <strong>Java</strong>, que é utilizada por muitos<br />
outros programas que precisam saber onde o <strong>Java</strong> se encontra, inclusive o Apache<br />
Tomcat. Na região de Variáveis do Sistema, clique em Nova e preencha os campos com o<br />
nome JAVA_HOME e valor com o caminho em que o <strong>Java</strong> foi instalado (na versão utilizada<br />
no livro, C:\Arquivos de programas\<strong>Java</strong>\jdk1.6.0_18).<br />
Agora temos que alterar a variável Path <strong>para</strong> conter o caminho <strong>para</strong> os programas<br />
executáveis do <strong>Java</strong>. Na tela da figura 1.4, selecione a variável Path e clique em Editar.<br />
Vá até o campo Valor da Variável e adicione um ; (ponto e vírgula) no final da linha (se<br />
já não houver). Acrescente o texto %JAVA_HOME%\bin;.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Figura 1.4 – Tela de manutenção das variáveis de ambiente.<br />
A variável PATH serve <strong>para</strong> que os programas possam ser executados por linha de comando<br />
(DOS) em qualquer diretório, e não apenas naquele em que se encontra. Por isso é o caminho<br />
definido nessa variável aponta <strong>para</strong> o \bin do JAVA_HOME, que é onde os executáveis do <strong>Java</strong><br />
se encontram.<br />
Para testarmos a instalação do <strong>Java</strong>, abra um Prompt de Comando (Iniciar ➤ Programas ➤<br />
Acessórios ➤ Prompt de Comando) e digite java –version. Esse comando exibirá a versão atual<br />
instalada do <strong>Java</strong>, conforme a figura 1.5, indicando o sucesso da instalação.<br />
1.2.1.2 Instalação no Linux<br />
Figura 1.5 – Teste da instalação do <strong>Java</strong>.<br />
Para o processo de instalação em Linux (em nosso caso utilizamos a distribuição<br />
Ubuntu), existem duas maneiras de proceder: no Linux Debian/Ubuntu, via apt-get,<br />
ou pela maneira tradicional, executando o arquivo de instalação obtido do site da Sun.<br />
29
30<br />
Instalação via apt-get<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
A apt-get é o gerenciador de pacotes usado no Linux Debian e em todas as suas versões<br />
derivadas, como Ubuntu ou Kurumin. Se seu Linux Debian/Ubuntu tem acesso à<br />
internet, execute os comandos em um terminal:<br />
sudo apt-get update<br />
sudo apt-get install sun-java6-jdk<br />
O primeiro fará uma atualização da lista dos pacotes disponíveis <strong>para</strong> instalação<br />
e o segundo fará o download e a instalação do <strong>Java</strong> 6 JDK. Quando o download<br />
terminar, a instalação começará automaticamente. Porém, antes disso o apt-get irá<br />
informar quanto de espaço em disco será necessário <strong>para</strong> a instalação e perguntará se<br />
você deseja continuar. Responda à pergunta positivamente, como mostra a figura 1.6.<br />
Figura 1.6 – Aceitação do início da instalação do <strong>Java</strong> 6 JDK.<br />
O próximo passo será ler e aceitar o contrato de instalação, conforme as figuras 1.7<br />
e 1.8. Para aceitar o contrato, tecle TAB <strong>para</strong> selecionar o botão Ok e pressione ENTER.<br />
Depois de terminado o processo de instalação, o <strong>Java</strong> já está pronto <strong>para</strong> uso. Para<br />
garantir o sucesso da instalação execute o comando java –version no prompt de<br />
comando, conforme a figura 1.9. Deverão aparecer três linhas com informações da<br />
versão instalada.<br />
Caso seja necessário, poderá ser utilizado o seguinte comando <strong>para</strong> desinstalar o<br />
<strong>Java</strong> 6, usando também o apt-get:<br />
sudo apt-get autoremove sun-java6-jdk<br />
A instalação do sun-java6-jdk compreende três subpacotes, que são sun-java6-bin, sunjava6-jdk<br />
e sun-java6-jre. A utilização do comando autoremove garante a remoção dos
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
três subpacotes e, se você utilizar o comando remove, apenas o pacote declarado no<br />
comando será removido.<br />
Figura 1.7 – Tela de leitura do contrato de instalação do <strong>Java</strong> 6 JDK.<br />
Figura 1.8 – Tela de aceitação do contrato de instalação do <strong>Java</strong> 6 JDK.<br />
Figura 1.9 – Teste da instalação.<br />
31
32<br />
Instalação tradicional<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Para a instalação em Linux é preciso selecionar a plataforma Linux correspondente<br />
no site de download do <strong>Java</strong> (http://java.sun.com/javase/downloads/). Na página seguinte,<br />
clique sobre o nome do arquivo <strong>para</strong> realizar o download e o salve em /usr/java<br />
(sugestão). Em nosso caso, o arquivo é o jdk-6u18-linux-i586.bin, conforme a figura 1.10.<br />
Observe que não estamos obtendo o arquivo RPM, mas o binário simples.<br />
Figura 1.10 – Obtenção o arquivo <strong>para</strong> instalação do <strong>Java</strong> no Linux.<br />
Depois de realizado o download, abra o terminal e se posicione na pasta na qual você<br />
direcionou o download do arquivo. Para iniciar a instalação, execute o seguinte comando.<br />
./jdk-6u18-linux-i586.bin<br />
Se você fez o download no Linux usando o Firefox, provavelmente o arquivo foi salvo na pasta<br />
/home//Desktop. Via console, faça a cópia do arquivo <strong>para</strong> a pasta /usr/java<br />
usando o comando cp /home//Desktop/jdk*.bin /usr/java.<br />
Assim que a instalação iniciar, deve ser feita a leitura e aceitação do contrato de<br />
instalação. Pressione ENTER até que todo o texto seja percorrido (ou pressione q <strong>para</strong><br />
ir até o final) e digite yes <strong>para</strong> continuar.<br />
Terminada a instalação, o programa sugere que você se registre no site da Sun (opcional).<br />
Basta pressionar ENTER <strong>para</strong> finalizar a instalação.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Configuração<br />
Caso você tenha feito a instalação tradicional é necessário configurar o <strong>Java</strong>. Continuando<br />
na pasta /usr/java, observe que foi criada a pasta jdk. Em nosso<br />
caso, jdk1.6.0_18, de modo que o diretório de instalação do <strong>Java</strong> ficou como /usr/java/<br />
jdk1.6.0_18.<br />
Agora será necessário configurar o <strong>Java</strong>. Para isso, edite o arquivo /etc/profile e adicione<br />
as novas variáveis de ambiente com o seguinte conteúdo no final do arquivo:<br />
export JAVA_HOME=/usr/java/jdk1.6.0_18<br />
export CLASSPATH=.:$CLASSPATH<br />
export PATH=$JAVA_HOME/bin:$PATH<br />
Para editar o arquivo /etc/profile no Linux você pode utilizar qualquer editor de texto. O mais<br />
utilizado é o vi ou o editor visual gedit.<br />
vi /etc/profile ou gedit /etc/profile<br />
Depois de salvar, abra um novo terminal e digite java –version <strong>para</strong> testar o funcionamento<br />
do <strong>Java</strong>. O resultado deverá ser semelhante ao exemplo a seguir.<br />
java version "1.6.0_18"<br />
<strong>Java</strong>(TM) SE Runtime Environment (build 1.6.0_18-b07)<br />
<strong>Java</strong> HotSpot(TM) Client VM (build 16.0-b13, mixed mode, sharing)<br />
1.3 Apache Tomcat<br />
Se seu sistema não exibir um conteúdo semelhante a esse, reinicie o sistema operacional<br />
<strong>para</strong> forçar a aceitação das novas variáveis de ambiente.<br />
O Apache Tomcat é um contêiner <strong>Java</strong> e um servidor web ao mesmo tempo. Ele suporta<br />
a execução das tecnologias <strong>Java</strong> Servlet e <strong>Java</strong>Server Pages (JSP), o que permite<br />
que o <strong>Java</strong> funcione <strong>para</strong> um ambiente web.<br />
Embora o Apache Tomcat seja robusto o suficiente <strong>para</strong> ser utilizado em ambiente<br />
de produção, ele permite integração com servidores como Apache HTTP e IIS da<br />
Microsoft, <strong>para</strong> fornecer uma capacidade ainda maior de trabalho.<br />
Utilizaremos o Apache Tomcat versão 6 <strong>para</strong> este livro, pois ele implementa as especificações<br />
Servlet 2.5 e JSP 2.1 necessárias ao funcionamento do <strong>Java</strong>Server Faces a<br />
partir da versão 1.2.<br />
33
34<br />
1.3.1 Instalação do Tomcat<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
O primeiro passo <strong>para</strong> instalar o Apache Tomcat é obter o pacote de instalação do site<br />
http://tomcat.apache.org/. Acesse o link Tomcat 6.x no menu Downloads e você será direcionado<br />
<strong>para</strong> a página http://tomcat.apache.org/download-60.cgi. A página apresentará<br />
sempre a última versão liberada <strong>para</strong> download do Apache Tomcat. Você deve fazer o<br />
download do pacote em Binary Distributions\Core, conforme a figura 1.11, sendo que você<br />
deve escolher o pacote ZIP <strong>para</strong> Windows e o TAR.GZ <strong>para</strong> Linux.<br />
Para a instalação em Linux até poderia ser utilizado o pacote ZIP, porém, a desvantagem dele<br />
é que o arquivo ZIP, quando extraído, não traz as permissões dos arquivos. Dessa forma você<br />
teria que aplicar manualmente as permissões de execução nos arquivos de script.<br />
Nessa página existe também a opção do pacote Windows Service Installer, que permite a<br />
instalação do Tomcat por meio de um assistente no Windows. No caso, optaremos<br />
pelo pacote ZIP, pois no Windows só é necessário descompactá-lo.<br />
No Linux e em modo texto você pode usar o comando wget <strong>para</strong> fazer o download de qualquer<br />
arquivo da internet. No caso do download do Apache Tomcat, você pode executar o seguinte<br />
comando:<br />
wget http://caminho/<strong>para</strong>.o/arquivo.tar.gz<br />
Para garantir a existência desse endereço, o melhor é copiar a URL de download do arquivo<br />
no site e utilizar o wget <strong>para</strong> fazer o download.<br />
Figura 1.11 – Obtenção do pacote de instalação do Apache Tomcat.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
1.3.1.1 Instalação no Windows<br />
Depois de descompactar o arquivo no disco, a estrutura de pasta deve se parecer<br />
com a da figura 1.12.<br />
Figura 1.12 – Estrutura de pastas da instalação do Apache Tomcat.<br />
Na instalação do Apache Tomcat é obrigatório definirmos uma nova variável de ambiente.<br />
Para isso, crie a variável CATALINA_HOME tendo como valor o caminho de instalação<br />
do Tomcat, no caso, C:\apache-tomcat-6.0.26. Agora você pode fazer um teste <strong>para</strong> se<br />
certificar de que a instalação ocorreu normalmente. Entre na pasta bin do diretório de<br />
instalação do Tomcat e execute o arquivo startup.bat: o resultado da execução deverá<br />
se parecer com o da figura 1.13.<br />
Figura 1.13 – Console do Apache Tomcat, depois de ser inicializado com sucesso.<br />
Abra seu navegador e digite http://localhost:8080. Deverá aparecer uma página como<br />
a da figura 1.14.<br />
35
36<br />
Figura 1.14 – Página inicial padrão do Apache Tomcat.<br />
Para desligar o servidor, execute o arquivo shutdown.bat.<br />
1.3.1.2 Instalação no Linux<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
A instalação em Linux poderá ser feita da forma tradicional, por arquivo tar.gz ou<br />
via apt-get.<br />
Instalação via apt-get<br />
Estes comandos do apt-get instalarão a versão 6.0 do Apache Tomcat, seus aplicativos<br />
administrativos e a documentação:<br />
shell> sudo apt-get update<br />
shell> sudo apt-get install tomcat6<br />
shell> sudo apt-get install tomcat6-admin<br />
shell> sudo apt-get install tomcat6-docs<br />
shell> sudo apt-get install tomcat6-examples<br />
Para iniciar o Apache Tomcat 6 execute:<br />
shell> /etc/init.d/./tomcat6 start<br />
Para finalizar o Apache Tomcat 6 execute:<br />
shell> /etc/init.d/./tomcat6 stop<br />
Nesse modo de instalação, a variável de ambiente padrão do Apache Tomcat fica com<br />
os valores seguintes. Essas variáveis de ambiente já foram configuradas na instalação<br />
via apt-get, sendo mostradas aqui apenas <strong>para</strong> conhecimento.<br />
CATALINA_HOME=/usr/share/tomcat6<br />
CATALINA_BASE=/var/lib/tomcat6
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Esse tipo de instalação utiliza não apenas a variável CATALINA_HOME, mas também CATALINA_<br />
BASE. CATALINA_HOME aponta <strong>para</strong> o local de instalação do Apache Tomcat. Já CATALINA_BASE<br />
aponta <strong>para</strong> o local dos arquivos específicos de uma instância do Apache Tomcat,<br />
nesse caso, os aplicativos, bibliotecas, arquivos de configuração e temporários.<br />
Instalação tradicional<br />
Uma das vantagens de utilizar a instalação tradicional é que os arquivos ficam todos em<br />
um único lugar, tornando mais simples sua manipulação no Apache Tomcat. Dessa<br />
forma, a variável CATALINA_BASE nem é necessária.<br />
Depois de realizar o download do arquivo, copie-o <strong>para</strong> a pasta /usr/java e, utilizando<br />
o comando tar, extraia o arquivo nesse diretório, conforme a seguir.<br />
tar xvfz apache-tomcat-6.0.26.tar.gz<br />
Se você fez o download no Linux usando o Firefox, provavelmente o arquivo foi salvo na pasta<br />
/home//Desktop. Via console, faça a cópia do arquivo <strong>para</strong> a pasta /usr/java usando<br />
o comando cp /home//Desktop/apache-*tar.gz /usr/java.<br />
Esse comando gera uma pasta apache-tomcat-6.0.26 com o conteúdo da instalação do<br />
Apache Tomcat. Observe que, no Linux, estamos adotando a pasta /usr/java como<br />
padrão <strong>para</strong> todas as instalações de ferramentas <strong>Java</strong>.<br />
Também é obrigatório definir uma nova variável de ambiente CATALINA_HOME. Para isso<br />
edite novamente o arquivo /etc/profile <strong>para</strong> adicionar a linha seguinte no final do<br />
arquivo. A variável indica o local de instalação do Apache Tomcat:<br />
export CATALINA_HOME=/usr/java/apache-tomcat-6.0.26<br />
Para iniciar ou finalizar o Apache Tomcat 6 execute os seguintes comando a partir<br />
da pasta CATALINA_HOME\bin.<br />
e<br />
shell> sh startup.sh<br />
shell> sh shutdown.sh<br />
A execução do startup.sh vai gerar uma saída, conforme a figura 1.15.<br />
Figura 1.15 – Terminal após inicialização com sucesso do Apache Tomcat.<br />
37
38<br />
Teste da instalação<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Depois de inicializar o Apache Tomcat conforme o tipo de instalação, abra seu navegador<br />
e digite http://localhost:8080. Deverá aparecer uma página como a da figura<br />
1.16. No caso da instalação via apt-get, essa página poderá ser um pouco diferente,<br />
mas também trará informações sobre o Apache Tomcat.<br />
1.3.2 Configuração e gerenciamento<br />
Figura 1.16 – Página inicial padrão do Apache Tomcat.<br />
Neste tópico vamos passar algumas dicas de configuração e gerenciamento do Tomcat.<br />
1.3.2.1 Alteração das portas padrão do Tomcat<br />
Por padrão, o Tomcat vem com algumas portas configuradas. Como foi possível observar<br />
no tópico anterior, entramos no endereço http://localhost:8080. Isso quer dizer<br />
que a porta HTTP padrão do Tomcat é a 8080. Veja na tabela a seguir quais são as<br />
portas padrão do Tomcat. Essa informação é importante, pois as portas podem entrar<br />
em conflito com alguma que você já esteja utilizando: pode ser um jogo em rede, um<br />
aplicativo ou outro servidor que já esteja em funcionamento<br />
Porta Descrição do serviço<br />
8080 Serviço de HTTP<br />
8005 Serviço de shutdown<br />
8009 Conector AJP/1.3<br />
8443 Porta de HTTPS
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
O primeiro indicativo de que você está tendo problemas com a numeração de portas<br />
do Tomcat é se a página principal acessada por http://localhost:8080 não abre. Para<br />
confirmar o problema, o melhor a ser feito é abrir o arquivo de log do Tomcat, localizado<br />
no diretório CATALINA_HOME\logs. Localize o arquivo mais recente com o nome<br />
catalina.AAAA-MM-DD.log (Exemplo: catalina.2008-10-04.log). Localizar nesse arquivo o texto<br />
a seguir é um indicativo que será necessário alterar algumas portas.<br />
java.net.BindException: Address already in use: JVM_Bind<br />
Para substituir essas portas basta alterar o arquivo CATALINA_HOME\conf\server.xml, localizar<br />
no arquivo o número correspondente à porta em questão e fazer a alteração. Esses números<br />
podem aparecem em vários locais ao mesmo tempo. Tome o cuidado <strong>para</strong> que<br />
nesse arquivo alguns desses números de portas apareçam dentro de comentários. Isso<br />
pode causar alguma confusão, e a alteração pode ocorrer em um lugar que não terá efeito.<br />
1.3.2.2 Alteração do timeout da sessão<br />
Em aplicativos web <strong>Java</strong>, a sessão é uma área de memória disponível ao usuário. Essa<br />
área de é utilizada pelos aplicativos <strong>para</strong> guardar informações entre as várias requisições<br />
de páginas realizadas. O problema é que o servidor web só sabe que o usuário<br />
existe quando ele acessa alguma página: ele não sabe se o usuário continua vendo o<br />
mesmo site ou se já fechou o navegador ou até desligou o computador.<br />
Para que essa área de memória não fique eternamente disponível ao usuário é determinado<br />
um tempo de vida <strong>para</strong> ela. Esse tempo de vida é denominado “session<br />
timeout” e é configurável no arquivo CATALINA_HOME\conf\web.xml. O valor informado<br />
corresponde à quantidade de minutos pela qual o servidor manterá a sessão ativa,<br />
sem qualquer novo acesso do usuário. Para configurar o timeout da sessão, localize<br />
o texto a seguir no arquivo web.xml e altere-o <strong>para</strong> o valor desejado.<br />
<br />
30<br />
<br />
Lembramos que valores muito altos podem prejudicar o servidor, pois ele poderá estar<br />
consumindo uma quantidade de memória desnecessária por um tempo muito grande.<br />
1.3.2.3 Uso do Manager do Tomcat<br />
O Manager é o aplicativo do Tomcat que permite gerenciar os aplicativos instalados,<br />
sendo acessível pelo endereço http://localhost:8080/manager/HTML. Permite realizar<br />
as seguintes operações remotamente com os aplicativos:<br />
■ Start – Inicia<br />
■ Stop – Finaliza<br />
39
40<br />
■ Reload – Reinicia<br />
■ Undeploy – Desinstala<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Além disso, permite provocar um timeout em todas as sessões <strong>para</strong> cada aplicativo<br />
<strong>para</strong> um tempo de vida determinado pelo acionamento do botão Expire Sessions. Esse<br />
é um recurso muito interessante <strong>para</strong> forçar a liberação de memória em servidor de<br />
produção. Na figura 1.17 você pode observar a tela do manager.<br />
Figura 1.17 – Tela principal do Tomcat Manager.<br />
Abaixo da relação dos aplicativos, existem mais duas áreas nas quais é possível fazer<br />
a instalação remota de aplicativos <strong>Java</strong> e visualizar as informações do servidor. Existe<br />
também o link Server Status, que permite visualizar todos os processos em execução no<br />
servidor que estão atendendo a requisições de usuários. Isso pode ser muito útil caso<br />
você esteja tendo algum problema de desempenho no aplicativo. No link é possível<br />
identificar se existe algum processo muito pesado em execução, por quanto tempo e<br />
qual IP fez a requisição.<br />
Porém, por padrão a instalação do Tomcat não define qualquer usuário com permissão<br />
de acesso ao aplicativo manager, por questões de segurança. Para incluir um usuário<br />
com acesso ao aplicativo de gerenciamento você deve alterar o arquivo CATALINA_HOME\<br />
conf\tomcat-users.xml. É possível que ele esteja totalmente vazio, de modo que você deve<br />
incluir duas linhas <strong>para</strong> deixá-lo como a seguir.<br />
<br />
<br />
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
<br />
<br />
O nome manager é a chave <strong>para</strong> definir o acesso ao aplicativo. Você só poderá alterar o<br />
username e password ou definir novos usuários.<br />
1.3.2.4 Aumento da quantidade de memória disponível <strong>para</strong> o Apache Tomcat<br />
Por padrão, todo aplicativo <strong>Java</strong> em execução tem uma área de memória reservada<br />
de 64 MB, porém, essa quantidade pode não ser suficiente em muitos casos. Se no<br />
uso de seu aplicativo começarem a ocorrer erros do tipo java.lang.OutOfMemoryError, a<br />
quantidade de memória disponível não é mais suficiente.<br />
Para contornar essa situação é necessário utilizar dois parâmetros de configuração:<br />
Parâmetro Descrição<br />
-Xmx Máximo de memória a ser reservado ao aplicativo.<br />
Exemplo: -Xmx1024m ou –Xmx1g<br />
-Xms Quantidade inicial de memória a ser disponibilizada ao aplicativo.<br />
Exemplo: -Xms256m<br />
Para o valor de -Xmx você deve levar em consideração a quantidade de memória livre<br />
no computador ou servidor. Para o valor de –Xms você deve considerar aquela quantidade<br />
de memória que certamente será consumida pelo aplicativo. Um valor muito<br />
baixo de –Xms fará com que o <strong>Java</strong> tenha que fazer muitas operação de realocação de<br />
memória, o que consome muitos recursos da máquina e prejudica o desempenho.<br />
Para definir estes parâmetros você deve criar a variável de ambiente CATALINA_OPTS,<br />
como na figura 1.18.<br />
Figura 1.18 – Configuração da variável CATALINA_OPTS.<br />
O Apache Tomcat tem um arquivo padrão <strong>para</strong> atribuir variáveis de ambiente específicas <strong>para</strong><br />
uma determinada instalação. Sempre que o Tomcat for inicializado, ele executará (caso exista)<br />
o arquivo setenv.bat ou setenv.sh. Nesse arquivo podem ser definidas variáveis de ambiente<br />
como CATALINA_OPTS, JAVA_HOME ou qualquer outra que seja necessária.<br />
41
42<br />
Windows:<br />
set CATALINA_OPTS=-Xms256m –Xmx1024m<br />
Linux:<br />
export CATALINA_OPTS="-Xms256m –Xmx1024m"<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Quando estivermos utilizando e executando o Apache Tomcat por dentro do Eclipse,<br />
essa configuração deve ser feita em outro local, o que será explicado no tópico 1.4.3.1.<br />
O Windows é sensível a espaços na definição de variáveis de ambiente, ou seja, a variável<br />
CATALINA_OPTS="123" tem um nome diferente de CATALINA_OPTS = "123". Se você defini-la<br />
com espaço entre o nome e o ‘=’ ela não será reconhecida pelo Tomcat.<br />
1.3.2.5 Monitoramento do consumo de memória e desempenho do Apache Tomcat<br />
Essa dica será apresentada <strong>para</strong> ser utilizada junto ao Apache Tomcat, porém, pode<br />
ser utilizada por qualquer aplicativo <strong>Java</strong>. O <strong>Java</strong> JDK tem um aplicativo de monitoramento<br />
JConsole, que permite realizar o monitoramento de aplicativos <strong>Java</strong><br />
quanto a consumo de memória, processos (threads), carga de classes e consumo de<br />
processamento, entre outros.<br />
Existem dois passos necessários <strong>para</strong> que seja possível utilizá-lo. O primeiro é que<br />
o aplicativo a ser monitorado precisa ter definido em sua linha de execução o parâmetro<br />
-Dcom.sun.management.jmxremote. Para o Tomcat, esse pode ser definido junto com<br />
a variável CATALINA_OPTS; <strong>para</strong> qualquer outro aplicativo, deve ser colocado junto com<br />
a linha de execução do <strong>Java</strong> (isso vale também <strong>para</strong> –Xmx e –Xms). Exemplo:<br />
set CATALINA_OPTS=-Xms256m –Xmx1024m -Dcom.sun.management.jmxremote<br />
O segundo é a execução do JConsole, que está localizado em JAVA_HOME\bin\jconsole.exe.<br />
Antes de executá-lo é necessário que o Tomcat já tenha sido inicializado depois de ter<br />
definido esse novo parâmetro em CATALINA_OPTS. Assim, ao ser executado, o JConsole<br />
mostrará a lista de todos os processos <strong>Java</strong> possíveis de serem monitorados, como<br />
mostra a figura 1.19.<br />
Deve ser selecionado o processo com o nome org.apache.catalina.startup.Bootstrap start,<br />
que é exatamente o Tomcat. Assim que você clicar em Connect, o JConsole mostrará<br />
um quadro com vários monitoramentos, conforme a figura 1.20.<br />
O mais interessante do JConsole é com certeza o monitoramento de memória. Claro<br />
que você não vai precisar ficar monitorando o servidor o tempo todo, pois não há<br />
motivo <strong>para</strong> isso se tudo estiver executando sem problemas. Entretanto, imagine o<br />
caso de um consumo exagerado pelo seu aplicativo: se você aliar a observação do
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
painel de memória do JConsole ao uso do aplicativo poderá identificar os pontos<br />
nos quais ocorre o maior consumo de memória. Com esse <strong>para</strong>lelo poderá fazer a<br />
devida correção ou reconfiguração dos parâmetros –Xmx e –Xms.<br />
Figura 1.19 – Tela de entrada do JConsole.<br />
Figura 1.20 – Tela principal do JConsole, exibindo vários gráficos com estatísticas do processo monitorado.<br />
43
44<br />
1.3.2.6 Instalação do Apache Tomcat como serviço<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
A instalação do Apache Tomcat como serviço permite que ele seja iniciado automaticamente<br />
quando o computador for iniciado, sendo um recurso muito requisitado<br />
nas empresas.<br />
Instalação no Windows<br />
Para instalar o Apache Tomcat como serviço, primeiro vá até a pasta \bin da instalação<br />
do Apache Tomcat via linha de comando. Nessa pasta deverá existir o arquivo service.<br />
bat. A sintaxe de utilização será:<br />
service.bat install/remove [service_name]<br />
Para instalar, execute o comando service install, como a seguir:<br />
C:\apache-tomcat-6.0.26\bin>service install<br />
Saída do comando:<br />
Installing the service 'Tomcat6' ...<br />
Using CATALINA_HOME: C:\apache-tomcat-6.0.26<br />
Using CATALINA_BASE: C:\apache-tomcat-6.0.26<br />
Using JAVA_HOME: C:\Arquivos de Programas\<strong>Java</strong>\jdk1.6.0_18<br />
Using JVM: C:\Arquivos de Programas\<strong>Java</strong>\jdk1.6.0_18\jre\bin\server\jvm.dll<br />
The service 'Tomcat6' has been installed.<br />
Para desinstalar o serviço utilize o comando service remove.<br />
Observe que na sintaxe do comando existe o parâmetro opcional service_name. Isso<br />
significa que você poderá definir um nome <strong>para</strong> o serviço a ser instalado, caso contrário,<br />
será utilizado o nome Tomcat6.<br />
É importante salientar que existem várias mudanças na forma de configurar o Apache<br />
Tomcat ao utilizá-lo como serviço, principalmente quanto aos parâmetros de inicialização,<br />
que foram expostos no tópico 1.3.2.4, com relação ao uso da variável CATALINA_OPTS.<br />
Em resumo, essa variável não é considerada quando se utiliza o Tomcat como serviço.<br />
A alternativa <strong>para</strong> continuar realizando esse tipo de configuração no Tomcat como<br />
serviço é utilizar o aplicativo [CATALINA_HOME]\BIN\tomcat6w.exe. Porém, esse aplicativo só<br />
funcionará <strong>para</strong> o serviço instalado caso o nome do serviço seja Tomcat6.<br />
Muito provavelmente poderão ser executados vários serviços do Apache Tomcat em um<br />
mesmo servidor. Para poder configurar esses serviços utilizando o aplicativo tomcat6w.exe<br />
basta duplicá-lo e renomeá-lo considerando o padrão [service_name]w.exe. Por exemplo, se<br />
você quiser um novo serviço do Tomcat com o nome tomcatTeste, deverá instalar o serviço<br />
usando o comando service install tomcatTeste, duplicar o tomcat6w.exe e renomear <strong>para</strong><br />
tomcatTestew.exe.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Na figura 1.21 podemos observar a aba General do tomcat6w.exe, na qual é possível, em<br />
Startup type, configurar se o serviço terá inicialização Manual, Automática ou Desabilitada.<br />
Também é possível iniciar e <strong>para</strong>r o serviço nos botões Start e Stop.<br />
Como posteriormente controlaremos a inicialização do Apache Tomcat por dentro do<br />
Eclipse IDE, recomenda-se deixar o serviço como Startup type: Manual, no ambiente de<br />
desenvolvimento.<br />
Figura 1.21 – Aba General do configurador de serviço do Apache Tomcat.<br />
Na figura 1.22 podemos visualizar a aba <strong>Java</strong> do tomcat6w.exe, que é a aba mais útil na<br />
configuração do Tomcat. Os principais campos a serem utilizados nessa tela serão o<br />
<strong>Java</strong> Options, no qual será possível incluir parâmetros de inicialização, e Initial memory pool<br />
e Maximum memory pool, que correspondem aos parâmetros –Xms e –Xms, respectivamente.<br />
Também é possível controlar o serviço Tomcat6 ou qualquer outro criado por meio do<br />
Gerenciador de Serviços do Windows em Painel de Controle ➤ Ferramentas Administrativas ➤<br />
Serviços. Este será exibido com o nome amigável Apache Tomcat, conforme a figura<br />
1.23. Se você clicar com o botão direito no serviço e em propriedades, verá o nome<br />
físico atribuído (ex: tomcat6) e outras informações. Também será possível iniciar e<br />
<strong>para</strong>r o serviço, mas não será possível fazer as mesmas configurações disponíveis no<br />
tomcat6w.exe.<br />
Mais informações sobre a configuração do Apache Tomcat como serviço podem ser<br />
obtidas em http://tomcat.apache.org/tomcat-6.0-doc/windows-service-howto.html.<br />
45
46<br />
1.4 Eclipse IDE<br />
Figura 1.22 – Aba <strong>Java</strong> do configurador de serviço do Apache Tomcat.<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Figura 1.23 – Tela de serviços do Windows, exibindo o serviço do Apache Tomcat.<br />
A ferramenta Eclipse foi inicialmente desenvolvida pela IBM e depois doada <strong>para</strong> a<br />
comunidade. Hoje o Eclipse não é apenas uma IDE de desenvolvimento <strong>Java</strong>, mas<br />
uma plataforma de desenvolvimento de código aberto. Por padrão, sempre que você<br />
fizer um download do Eclipse ele estará pre<strong>para</strong>do <strong>para</strong> o desenvolvimento <strong>Java</strong>, mas<br />
cada vez mais as empresas e a comunidade têm usado a plataforma Eclipse <strong>para</strong> criar<br />
plug-ins <strong>para</strong> as mais diversas linguagens de programação.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Para você ter uma ideia, utilizando o Eclipse, hoje é possível programar em C/C++,<br />
COBOL, PHP e Progress entre outras. Além disso, ele oferece todos os recursos <strong>para</strong><br />
que você mesmo crie novos plug-ins <strong>para</strong> a ferramenta.<br />
A seguir, faremos a instalação da ferramenta e a configuração e veremos dicas de<br />
utilização.<br />
1.4.1 Instalação do Eclipse<br />
O primeiro passo <strong>para</strong> instalar o Eclipse é obter seu pacote na internet. Acesse o site<br />
http://www.eclipse.org/downloads/ e será exibida uma página como a da figura 1.24.<br />
Figura 1.24 – Tela da sessão de downloads do site do Eclipse.<br />
Como você pode perceber, existem várias opções de pacotes de download: são diversas<br />
combinações diferentes de plug-ins e recursos, cada uma com um objetivo específico.<br />
Em nosso caso, a melhor opção é a Eclipse IDE for <strong>Java</strong> EE Developers. Nesse item, clique no<br />
sistema operacional desejado à direita e veja que existem opções <strong>para</strong> Windows, Mac<br />
OS e Linux 32 e 64 bits.<br />
Na página seguinte será oferecido um local no qual você fará o download do Eclipse,<br />
ou você pode percorrer a lista logo abaixo na mesma página e fazer o download de<br />
um local mais próximo do Brasil, por exemplo. Clique no link de um local, conforme<br />
a figura 1.25.<br />
47
48<br />
1.4.1.1 Instalação no Windows<br />
Figura 1.25 – Seleção do local de origem do download do Eclipse.<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Assim como no caso do Apache Tomcat, o Eclipse também não tem um instalador.<br />
Basta descompactar o arquivo no local que desejar. Vamos descompactar esse arquivo<br />
em sua unidade C:\, conforme a figura 1.26.<br />
Figura 1.26 – Estrutura de pastas depois de instalar o Eclipse.<br />
O arquivo <strong>para</strong> executar o Eclipse é o eclipse.exe. O mais prático é você criar um atalho<br />
<strong>para</strong> esse arquivo e posicioná-lo em sua área de trabalho do Windows.<br />
Na primeira vez que você executar o Eclipse, aparecerá uma tela perguntando qual<br />
workspace você deseja trabalhar. O workspace é uma pasta do disco no qual serão
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
criados todos os projetos do Eclipse. Nesse caso, você tem duas opções: pode sempre<br />
informar esse caminho manualmente ou configurar qual workspace deseja trabalhar<br />
por meio do parâmetro –data no atalho.<br />
Isso permite ter apenas uma instalação do Eclipse e vários atalhos apontando <strong>para</strong><br />
workspaces diferentes. O parâmetro –data deve ser informado em um atalho criado<br />
<strong>para</strong> o eclipse.exe, conforme a figura 1.27.<br />
Isso é principalmente útil quando você estiver utilizando o Eclipse <strong>para</strong> diversos fins,<br />
por exemplo, Eclipse Faculdade, Eclipse JME, Eclipse Estudo Livro.<br />
Figura 1.27 – Atalho do Eclipse configurando um determinado workspace.<br />
1.4.1.2 Instalação no Linux<br />
Depois de realizar o download do arquivo, copie-o <strong>para</strong> a pasta /usr/java.<br />
Se você fez o download no Linux usando o Firefox, provavelmente o arquivo foi salvo na pasta<br />
/home//Desktop. Via console, faça a cópia do arquivo <strong>para</strong> a pasta /usr/java usando<br />
o comando cp /home//Desktop/eclipse-*tar.gz /usr/java.<br />
Com o comando tar, extraia o arquivo nesse diretório, conforme a seguir.<br />
tar xvfz eclipse-jee-galileo-SR2-linux-gtk.tar.gz<br />
49
50<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Esse comando gera uma pasta eclipse com o conteúdo da instalação do Eclipse IDE.<br />
Observe que, no Linux, estamos adotando a pasta /usr/java como padrão <strong>para</strong> todas<br />
as instalações de ferramentas <strong>Java</strong>.<br />
Depois de extraído, entre na pasta eclipse e execute o comando ./eclipse <strong>para</strong> executar<br />
o Eclipse IDE, conforme a figura 1.28.<br />
Figura 1.28 – Estrutura de pastas depois de instalar o Eclipse.<br />
Assim como no Windows, o mais prático é criar um atalho <strong>para</strong> o Eclipse em sua<br />
área de trabalho do Linux. Para criar o atalho no Linux Ubuntu, clique com o botão<br />
direito do mouse na área de trabalho e selecione Criar Lançador, conforme a figura 1.29.<br />
Figura 1.29 – Criação de um atalho no Linux.<br />
Existem dois tipos básicos de atalhos que podem ser criados <strong>para</strong> o Eclipse, um genérico<br />
e outro apontando <strong>para</strong> um workspace (pasta de projetos). O atalho genérico,<br />
quando aberto, sempre perguntará qual o workspace você quer trabalhar ou abrirá<br />
no workspace padrão.<br />
O segundo atalho permite que você especifique no atalho qual pasta deve ser considerada<br />
<strong>para</strong> o workspace, utilizando o parâmetro –data. Isso é interessante, pois você<br />
pode ter uma instalação do Eclipse trabalhando com várias pastas de projeto.<br />
Para o primeiro atalho mantenha o campo Tipo como Aplicativo. No campo Nome<br />
informe Eclipse e, no Comando, informe /usr/java/eclipse/eclipse, conforme a figura 1.30.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Figura 1.30 – Configuração do atalho no Linux.<br />
Para o segundo atalho informe Nome como Eclipse – <strong>Java</strong> <strong>para</strong> a <strong>Web</strong> (ou como quiser)<br />
e, no campo Comando, informe /usr/java/eclipse/eclipse –data /home//projetos/.<br />
Observe que o parâmetro –data configura a pasta /home//projetos/ como a pasta<br />
de projetos <strong>para</strong> esse atalho do Eclipse. Essa pasta não precisa existir imediatamente:<br />
o Eclipse irá criá-la assim que necessário. Se você quiser criar um novo atalho <strong>para</strong><br />
projetos da Faculdade, por exemplo, utilize o caminho /home//projetos_faculdade.<br />
Dessa forma, criar atalhos do Eclipse e usar o parâmetro -data <strong>para</strong> cada necessidade<br />
mantém tudo organizado, conforme a figura 1.31.<br />
1.4.2 Dicas de utilização<br />
Figura 1.31 – Atalhos <strong>para</strong> o Eclipse criados na área de trabalho do Linux.<br />
Na figura 1.32 temos uma visão geral do Eclipse, na primeira vez em que ele é aberto.<br />
Nele você pode perceber a organização geral da ferramenta. A primeira coisa que<br />
chama a atenção é a organização interna. Existem várias subjanelas internas, que são<br />
conhecidas como views.<br />
51
52<br />
Figura 1.32 – Visão da tela do Eclipse na primeira fez em que é aberto.<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Outro conceito de organização muito importante utilizado pelo Eclipse é o das<br />
perspectivas, que podemos entender como formas diferentes de ver algo, e o Eclipse<br />
trabalha dessa forma <strong>para</strong> organizar as views. Existem diversas perspectivas disponíveis<br />
no Eclipse. Na figura 1.33 podemos ver algumas delas.<br />
Figura 1.33 – Visão das perspectivas inicialmente disponíveis no Eclipse.<br />
Cada perspectiva disponibiliza as views mais interessantes <strong>para</strong> cada necessidade<br />
de uso. Por exemplo, a primeira perspectiva exibida quando abrimos o Eclipse é a<br />
perspectiva <strong>Java</strong> EE.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
1.4.2.1 Perspectiva <strong>Java</strong> EE<br />
Essa perspectiva mostra as views úteis quando se está programando em <strong>Java</strong>, utilizando<br />
a plataforma <strong>Java</strong> EE. Elas são descritas a seguir.<br />
View Descrição<br />
Project Explorer Exibe todos os projetos do workspace em questão. Em cada projeto<br />
são exibidos todos os arquivos envolvidos (arquivos <strong>Java</strong>, XML etc.).<br />
Problems Exibe os erros de compilação encontrados nas fontes dos projetos.<br />
Tasks Exibe uma lista de tarefas pendentes.<br />
Servers Exibe uma lista dos servidores configurados <strong>para</strong> executar os projetos.<br />
Data Source Explorer Exibe e permite configurar as fontes de dados que possam estar<br />
sendo utilizadas nos projetos. A partir dessas fontes você conseguirá<br />
executar consultas SQL nos bancos de dados, diretamente no<br />
Eclipse.<br />
Snippets Exibe botões que auxiliam na inclusão de blocos de código-fonte<br />
no arquivo aberto. Por exemplo: inclusão de comentário, bloco de<br />
script, diretivas de página.<br />
Outline Exibe a relação de propriedades e métodos da classe <strong>Java</strong> que estiveram<br />
em execução, sendo muito útil <strong>para</strong> localizar mais facilmente<br />
no programa.<br />
A disposição das views dentro da perspectiva pode ser alterada livremente, excluindo<br />
ou adicionando novas views que possam ser interessantes.<br />
1.4.2.2 Perspectiva <strong>Java</strong><br />
Essa perspectiva exibe as views úteis quando se está desenvolvendo em <strong>Java</strong>, mas sem<br />
utilizar os recursos do <strong>Java</strong> EE. Ou seja, nessa perspectiva não é exibida a view Server<br />
e, em vez da view Project Explorer, é exibida a view Package Explorer, que facilita a<br />
visualização dos packages dos projetos.<br />
1.4.2.3 Perspectiva Debug<br />
Essa perspectiva exibe as views úteis quando se está realizando o debug de uma execução<br />
em <strong>Java</strong>. O debug é a execução passo a passo de uma classe <strong>Java</strong>, permitindo<br />
visualizar as linhas que serão executadas. Nessa perspectiva existem, além das views<br />
(Servers, Outline e Tasks) já apresentadas, as seguintes:<br />
View Descrição<br />
Debug Exibe a lista dos processos <strong>Java</strong> em execução.<br />
Variables Mostra as variáveis envolvidas na execução atual e seu respectivo valor. É<br />
possível também alterar o valor de alguns tipos de variáveis manualmente,<br />
no meio da execução.<br />
53
54<br />
View Descrição (cont.)<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Breakpoints Exibe os pontos de <strong>para</strong>da obrigatória <strong>para</strong> a execução da classe <strong>Java</strong>.<br />
Console Exibe as mensagens de saída da execução do programa. Toda mensagem<br />
via System.out.println("Olá mundo…") será exibida no Console.<br />
Geralmente, quando você executar algum servidor ou classe <strong>Java</strong> em modo Debug,<br />
o Eclipse sugere automaticamente que essa perspectiva seja ativada.<br />
1.4.2.4 Teclas de atalho<br />
Um grande facilitador no uso do Eclipse e que dará muito mais velocidade a seu<br />
trabalho são as teclas de atalho. As teclas relacionadas a seguir estão entre as mais<br />
utilizadas.<br />
Tecla de atalho Descrição<br />
Ctrl+Espaço Realiza o code completion, ou seja, sugere opções <strong>para</strong> qualquer coisa<br />
que você tenha digitado, com base em nomes de classes, métodos,<br />
propriedades etc.<br />
Ctrl+K Localiza no arquivo aberto outras ocorrências do texto selecionado.<br />
Ctrl+L Localiza uma linha determinada.<br />
Ctrl+Shift+T Localização rápida de classes <strong>Java</strong>, apenas digitando partes do nome.<br />
Ctrl+Shift+R Localização rápida de quaisquer arquivos, apenas digitando partes do<br />
nome.<br />
Ctrl+O Exibe a lista de propriedades e métodos da classe atual. Permite busca<br />
rápida pelo nome.<br />
Ctrl+Shift+O Organiza a lista dos imports da classe.<br />
Ctrl+Shift+F Formata o código-fonte.<br />
Ctrl+/ Adiciona um comentário de linha.<br />
Ctrl+Shift+/ Adiciona um comentário de bloco.<br />
Alt+Shift+R Renomeia a propriedade ou o método selecionado, realizando o refactory<br />
de todo o código. Ou seja, será modificado o nome do elemento<br />
em todos os lugares nos quais ele era referenciado.<br />
F2 Mostra a documentação da classe, método ou propriedade que estiver<br />
com o foco.<br />
F3 Abre a declaração da classe, método ou propriedade que estiver com o<br />
foco.<br />
Ctrl+Shift+L Lista todas as teclas de atalhos disponíveis na IDE.<br />
1.4.2.5 Configuração de fontes e cores<br />
Uma configuração que muitas vezes é fundamental <strong>para</strong> deixar a IDE mais ao gosto<br />
do usuário é a configuração de fontes e cores. Alguns podem querer fontes maiores<br />
ou menores, ou uma cor de fundo diferente etc. Para alterar esse tipo de configuração<br />
no Eclipse, acesse Window ➤ Preferences. Na janela de preferências, abra o item General ➤<br />
Appearance ➤ Colors and Fonts. O item que altera as configurações de fonte <strong>para</strong> o códigofonte<br />
<strong>Java</strong> é o <strong>Java</strong> Editor Text Font.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
No topo da janela Preferences, existe um campo com o texto “type filter text”. Qualquer palavra<br />
que você digitar nesse campo fará com que o Eclipse só mostre as opções de configuração<br />
que contenham essa palavra. Como essa janela contém muitas opções de configuração, e<br />
esse número aumentará na medida em que você instalar novos recursos ou plug-ins, esse<br />
recurso é bastante interessante. Um exemplo de propriedade muitas vezes necessária e que é<br />
difícil encontrar é a configuração de Proxy. Digite proxy nesse campo e o Eclipse rapidamente<br />
mostrará a opção correta <strong>para</strong> configuração: General ➤ Network Connections.<br />
No manual do Eclipse, existe uma relação completa de todas as dicas de utilização<br />
e recursos das ferramentas, em Help ➤ Tips and Tricks, além da tecla de atalho Ctrl+Shift+L,<br />
que mostra uma relação de todas as teclas de atalho do Eclipse.<br />
1.4.3 Configuração do Apache Tomcat <strong>para</strong> funcionar dentro do Eclipse<br />
Agora que já instalamos e configuramos o Apache Tomcat e o Eclipse IDE de forma<br />
individual, vamos integrar os dois <strong>para</strong> que Tomcat possa ser executado a partir do<br />
Eclipse. Isso permitirá que uma classe ou JSP que já é executada por padrão no servidor<br />
também possa ser executada por dentro do ambiente interno da IDE Eclipse.<br />
O primeiro passo a ser feito é ir até a view Servers, clicar com o botão direito do mouse<br />
e escolher New ➤ Server, conforme a figura 1.34.<br />
Figura 1.34 – Criação de um novo servidor na view Server.<br />
Isso iniciará o assistente de criação de servidores dentro do Eclipse. Selecione Tomcat<br />
v6.0 Server e clique em Next, conforme a figura 1.35.<br />
Na tela seguinte, informe o local em que foi instalado o Apache Tomcat, e clique em<br />
Finish. O caminho definido nessa última tela é o mesmo que já foi definido <strong>para</strong> a<br />
variável CATALINA_HOME. Pronto: agora o servidor que executará nossos projetos web já<br />
está criado, como mostra a figura 1.36.<br />
Outra forma de alterar a configuração do local no qual o servidor está instalado é pelo menu<br />
Window ➤ Preferences: selecione a opção Servers ➤ Runtime Environment.<br />
55
56<br />
Figura 1.35 – Seleção do servidor a ser criado.<br />
Figura 1.36 – View Server do Eclipse exibindo o servidor recém-criado.<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Para testar o funcionamento do Apache Tomcat por dentro do Eclipse, clique no botão<br />
que realiza a execução em modo Normal, na view Servers. Nesse mesmo instante,<br />
na view Servers, a coluna State mostrará o texto Starting, e a view Console será exibida,<br />
mostrando as mensagens de saída do servidor, indicando que ele está em processo de<br />
inicialização. Na figura 1.37 você pode observar as mensagens do Console, indicando<br />
que o servidor foi inicializado com sucesso.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Figura 1.37 – View Console exibindo as mensagens de saída do servidor, durante o processo de inicialização.<br />
É nesse momento que também poderão ocorrer os erros de conflito de portas, como foi<br />
comentado na seção 1.3.2.1. Nesse caso o Eclipse também fornece um meio de alterar essa<br />
configuração. Para isso basta dar um duplo clique no nome do servidor na view Servers, e será<br />
exibida uma tela de configurações, conforme a figura 1.38. Você poderá alterar os números<br />
de portas pela aba Ports.<br />
Figura 1.38 – Tela de configuração do servidor, na qual é possível alterar os números de portas, entre outras<br />
configurações.<br />
1.4.3.1 Configuração da memória disponível <strong>para</strong> o Tomcat<br />
Ainda na tela da figura 1.38, clique em Open launch configuration. A tela que será exibida<br />
contém as informações de configuração de como o Apache Tomcat será executado<br />
por dentro do Eclipse.<br />
Na aba Arguments, altere o campo VM Arguments e acrescente os parâmetros –Xmx e –Xms<br />
com a quantidade de memória necessária.<br />
57
58<br />
1.4.4 Criação de um novo projeto <strong>para</strong> executar no servidor<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Agora que temos um servidor integrado ao Eclipse IDE, podemos criar nosso primeiro<br />
projeto web. Para isso clique com o botão direito do mouse na view Project Explorer,<br />
como na figura 1.39. Selecione a opção New ➤ Dynamic <strong>Web</strong> Project.<br />
A criação de projetos também pode ser feita pelo menu File ➤ New ➤ Dynamic <strong>Web</strong> Project.<br />
Dependendo da perspectiva ativa pode ser que essa opção de projeto não seja apresentada.<br />
Nesse caso, vá <strong>para</strong> New ➤ Other e selecione o item <strong>Web</strong> ➤ Dynamic <strong>Web</strong> Project.<br />
Figura 1.39 – Seleção do tipo do projeto a ser criado.<br />
Na tela que será exibida, informe um nome <strong>para</strong> o projeto, preferencialmente sem<br />
espaços nem caracteres especiais. No campo Server Runtime, selecione Apache Tomcat<br />
v6 – que foi o servidor que configuramos.<br />
No quadro Configuration, clique no botão Modify e marque a opção <strong>Java</strong>Server Faces –<br />
clique em OK. Na tela de criação do projeto, clique em Next até chegar em JSF Capabilities.<br />
Nessa tela selecione o Type igual a Disable Library Configuration e troque o URL Mapping Patterns<br />
de /faces/* <strong>para</strong> *.jsf. Clique em Finish. A tela de configuração deverá ter ficado como<br />
na figura 1.40.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Esta opção do quadro Configuration não é obrigatória, mas é recomendada caso você<br />
queria trabalhar com <strong>Java</strong>Server Faces. O interessante é que ela habilita o assistente de<br />
código (code completion) nos arquivos XHTML, auxiliando na utilização de tags e atributos.<br />
Independentemente de você ter feito ou não esta opção, vamos configurar e instalar<br />
completamente o <strong>Java</strong>Server Faces de forma manual no projeto.<br />
Figura 1.40 – Criação do novo projeto web.<br />
Depois de criado o projeto, este deve aparecer na view Project Explorer, conforme a<br />
figura 1.41.<br />
Figura 1.41 – Visão do novo projeto criado.<br />
59
60<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Essa é a estrutura-padrão do projeto web dentro do Eclipse. A seguir serão descritos<br />
os principais itens dessa estrutura de projeto.<br />
Item Descrição<br />
Deployment Descriptor Fornece um atalho <strong>para</strong> o arquivo web.xml, que fica por padrão<br />
armazenado em /WEB-INF/web.xml. Nesse atalho, o Eclipse oferecerá<br />
vários assistentes <strong>para</strong> incluir novos elementos no arquivo<br />
web.xml.<br />
<strong>Java</strong> Resources Fornece acesso aos arquivos <strong>Java</strong> do projeto. É nesse elemento<br />
que aparecerão todos os packages de seu aplicativo.<br />
<strong>Web</strong>Content Representa o conteúdo raiz do aplicativo web. Nessa pasta você<br />
deverá colocar a página index.html e todas as outras páginas,<br />
jsp, css, imagens etc. Nela você pode criar a estrutura de pastas<br />
que quiser.<br />
<strong>Web</strong>Content/WEB-INF A pasta WEB-INF faz parte da especificação <strong>Java</strong> <strong>para</strong> projetos<br />
web. Todo projeto web <strong>Java</strong> tem que ter essa pasta. Ela é inacessível<br />
via web, somente internamente. Isso garante que nenhum<br />
arquivo presente nela possa ser visualizado por algum usuário.<br />
Por esse motivo, os arquivos de configuração, bibliotecas (jar)<br />
e classes ficam seguros nessa pasta.<br />
<strong>Web</strong>Content/WEB-INF/lib<br />
Nessa pasta devem ser mantidos todos os arquivos Jar necessários<br />
ao funcionamento do projeto.<br />
Agora que já estamos com o projeto criado e conhecemos sua estrutura, vamos criar<br />
um arquivo JSP e testar sua execução no servidor. Como acabamos de ver, o local<br />
correto <strong>para</strong> criar um arquivo JSP é na pasta <strong>Web</strong>Content. Dessa forma, clique com o<br />
botão direito do mouse na pasta <strong>Web</strong>Content e vá até New ➤ JSP.<br />
Será aberto um assistente <strong>para</strong> a criação de arquivos JSP. Informe o nome index.jsp<br />
<strong>para</strong> o arquivo no campo File Name e clique em Finish. Depois disso, o arquivo index.jsp<br />
estará criado, e seu Eclipse irá exibi-lo <strong>para</strong> edição, conforme a figura 1.42.<br />
Se você observar a figura 1.42, perceberá que o texto Ola Mundo e Agora são: ficou sublinhado<br />
por uma linha ondulada, igual ao MS-Word quando faz a correção de uma palavra. E é exatamente<br />
isso que aconteceu, mas no momento esse não é um recurso interessante e podemos desligá-lo.<br />
Para desligar o Spell Checking, abra a janela Windows ➤ Preferences, selecione a opção General ➤<br />
Editors ➤ Text Editors ➤ Spelling e desmarque a opção Enable spell checking.<br />
A figura 1.42 exibe uma alteração no arquivo, com a intenção de mostrar a seguinte<br />
mensagem na tela:<br />
Olá Mundo<br />
Agora são: 13:55 (hora atual)
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Figura 1.42 – Eclipse exibindo o arquivo index.jsp que acabou de ser criado.<br />
Você pode perceber, na figura, a presença de uma janela mostrando o nome de classe<br />
SimpleDateFormat. Isso foi consequência do uso da tecla de atalho Ctrl+Espaço, que realizou<br />
o code-completion. Observe que digitamos apenas o texto simpledatef no arquivo<br />
e pressionamos Ctrl+Espaço. O que o Eclipse fez foi sugerir um nome de classe que<br />
iniciasse com simpledatef. Se você selecionar o nome SimpleDateFormat sugerido pelo<br />
Eclipse, ele completará a palavra que você digitou e adicionará automaticamente o<br />
import <strong>para</strong> essa classe, no topo do arquivo. Em arquivo JSP, o import é realizado na<br />
diretiva de página (), no parâmetro import.<br />
O arquivo final ficará igual ao texto a seguir.<br />
<br />
<br />
<br />
<br />
<br />
<br />
Teste inicial<br />
<br />
<br />
Olá Mundo.<br />
Agora são:<br />
61
62<br />
<br />
<br />
<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Agora que o arquivo index.jsp está completo, vamos testar o projeto em ambiente web.<br />
Para isso, vá até a view Server e clique com o botão direito do mouse no servidor configurado<br />
e acione a opção Add and Remove Projects. A opção permite definir quais dos projetos<br />
do Eclipse serão executados nesse servidor quando ele for colocado no ar. A tela que<br />
será exibida pode ser vista na figura 1.43. Ali, você deve selecionar o projeto olamundo e<br />
clicar em Add >> <strong>para</strong> adicioná-lo <strong>para</strong> execução no servidor, clicando depois em Finish.<br />
Você deverá repetir esse mesmo procedimento <strong>para</strong> qualquer outro projeto que queira executar<br />
no servidor. Nessa tela também é possível remover projetos. Se você deixar no servidor<br />
somente os projetos que realmente está utilizando, o servidor subirá mais rapidamente e<br />
consumirá menos memória.<br />
Figura 1.43 – Inclusão de projetos <strong>para</strong> serem executados no servidor configurado.<br />
Agora basta colocar o servidor configurado no ar <strong>para</strong> fazer o teste. Para isso, acione<br />
o botão Start the Server na view Servers, conforme a figura 1.44.<br />
Figura 1.44 – Inicialização do servidor <strong>para</strong> testar o projeto.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Quando a coluna State da view Servers aparecer como Started quer dizer que o servidor<br />
já está no ar: isso acontecerá muito rápido. Agora, se você abrir um navegador e<br />
digitar o endereço http://localhost:8080/olamundo será exibida a página index.jsp que<br />
acabamos de criar, sendo uma página igual à da figura 1.45.<br />
Figura 1.45 – Página de teste do projeto olamundo sendo visualizada no navegador.<br />
O aparecimento dessa página conforme a figura 1.45 confirma que todo o nosso ambiente<br />
de desenvolvimento está configurado e funcionando. Estamos prontos <strong>para</strong><br />
seguir adiante e conhecer cada etapa do projeto que será desenvolvido e aprender<br />
todas as tecnologias necessárias <strong>para</strong> que ele se concretize.<br />
1.5 MySQL<br />
O MySQL é o banco de dados de código-fonte aberto mais popular do mundo,<br />
tendo mais de 70 milhões de instalações no mundo todo. É utilizado por empresas<br />
como Amazon.com, Google, Motorola, MP3.com, NASA, Silicon Graphics, Texas<br />
Instruments e Yahoo! Finance.<br />
O fato de ser de código-fonte aberto não significa que ele seja gratuito: isso dependerá<br />
de como você utilizará o banco de dados. Para que o MySQL possa ser utilizado gratuitamente,<br />
o aplicativo que o utiliza tem que seguir a licença GPL. Isso basicamente<br />
significa que, se você não obtiver lucro com o seu aplicativo, não precisará pagar pelo<br />
MySQL e que sempre deverá distribuir os códigos-fonte do MySQL junto com seu<br />
aplicativo ou pelo menos indicar onde obtê-los.<br />
63
64<br />
1.5.1 Instalação do MySQL<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
O primeiro passo <strong>para</strong> instalar o MySQL é obter seu arquivo do site http://www.mysql.<br />
com/downloads. Ao entrar no site, clique no botão downloads abaixo do nome MySQL<br />
Community Server, que é a versão que utilizaremos, ou diretamente no endereço http://<br />
dev.mysql.com/downloads/mysql/5.1.html. Role a página <strong>para</strong> baixo até encontrar os<br />
links de download <strong>para</strong> cada sistema operacional, conforme a figura 1.46. Selecione<br />
o instalador que pretende utilizar. Caso esteja utilizando o Linux Ubuntu, pule diretamente<br />
<strong>para</strong> a seção 1.5.1.2, pois poderemos usar o instalador apt-get.<br />
Para fazer o download, sugerimos a versão Windows MSI Installer, e <strong>para</strong> o Linux, a versão<br />
Linux (x86), a não ser que seu computador seja 64 bits.<br />
Para a instalação em Windows, não obtenha a versão MySQL Essentials, pois ela vem com<br />
várias ferramentas a menos no pacote.<br />
Figura 1.46 – Página de download do MySQL <strong>para</strong> diferentes sistemas operacionais.<br />
Depois de clicar em Download você será direcionado <strong>para</strong> uma página na qual inicialmente<br />
será solicitado que você se cadastre, o que não é necessário: apenas clique no<br />
link No thanks, just take me to the downloads! abaixo da tela de cadastro <strong>para</strong> escolher um dos<br />
espelhos <strong>para</strong> o download. Nesse caso, espelho se refere aos vários locais do mundo<br />
nos quais os arquivos da instalação estão replicados (espelhados).<br />
MySQL Workbench<br />
Além do próprio servidor, o MySQL também oferece outras ferramentas que facilitarão<br />
bastante a administração do banco de dados. Essas ferramentas também<br />
estão disponíveis no site http://www.mysql.com/downloads, no link MySQL Workbench, ou<br />
diretamente no endereço http://dev.mysql.com/downloads/workbench/.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
O MySQL Workbench inclui as seguintes ferramentas:<br />
Ferramenta Descrição<br />
Server Administration Ferramenta de administração, utilizada <strong>para</strong> a criação dos bancos<br />
de dados, administração de usuários e rotinas de backup/restore.<br />
SQL Development Ferramenta <strong>para</strong> realização de consultas e atualizações nas bases<br />
de dados.<br />
Database Modeling Ferramenta <strong>para</strong> desenho e modelagem de bancos de dados.<br />
Principalmente a SQL Development será utilizada <strong>para</strong> a execução de SQLs no decorrer<br />
do projeto<br />
1.5.1.1 Instalação do MySQL Server no Windows<br />
A instalação em Windows acontece com a ajuda de um assistente. Executando o arquivo<br />
de instalação, na segunda tela do assistente escolha o tipo de instalação Typical<br />
(Típica), que disponibiliza as opções mais comuns do MySQL, conforme a figura 1.47.<br />
Figura 1.47 – Tela do assistente do MySQL na qual se escolhe o tipo de instalação.<br />
Clicando em Next a instalação será iniciada. Concluída a instalação, serão exibidas<br />
algumas telas com informações comerciais: basta clicar em Next até chegar ao final.<br />
A última tela do assistente traz uma caixa de seleção perguntando se você deseja<br />
configurar o MySQL Server: mantenha-a marcada e clique em Finish.<br />
Depois, o assistente será iniciado <strong>para</strong> configuração do MySQL.<br />
65
66<br />
Configuração do MySQL<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
A configuração do MySQL pode ocorrer imediatamente após a instalação ou a qualquer<br />
momento pelo menu no qual o MySQL estiver instalado, em MySQL ➤ MySQL Server<br />
5.1 ➤ MySQL Server Instance Config Wizard.<br />
Na primeira tela, clique em Next. Na segunda, você poderá escolher Detailed Configuration<br />
(Configuração detalhada) ou Standard Configuration (Configuração padrão). Neste capítulo<br />
vamos abordar a configuração padrão, por isso, selecione a opção Standard Configuration<br />
e clique em Next.<br />
Na tela seguinte, será configurado o nome do serviço do MySQL Server e diretório<br />
PATH. Deixe as configurações conforme a figura 1.48. Essas configurações instalam o<br />
MySQL como um serviço do Windows e colocam seu diretório BIN em PATH, o que será<br />
bastante útil na execução de comandos do MySQL no DOS. Clique em Next.<br />
Figura 1.48 – Tela do assistente de configuração do MySQL no qual se instala o serviço e configura-se o<br />
diretório PATH.<br />
Nesse ponto, caso o MySQL já tenha sido instalado em sua máquina em alguma ocasião<br />
talvez seja necessário trocar o nome do serviço, pois se já existir um com o respectivo Service<br />
Name ocorrerá erro no final da configuração. Para garantir que já não haja um serviço com<br />
o nome MySQL, vá em Painel de Controle ➤ Ferramentas Administrativas ➤ Serviços e procure o<br />
nome em questão na lista.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
Na próxima tela serão definidas as configurações de segurança, conforme a figura<br />
1.49. Escolha Modify Security Settings <strong>para</strong> definir uma senha principal <strong>para</strong> o MySQL e<br />
mantenha desmarcadas as opções Enable root access from remote machines e Create An Anonymous<br />
Account. A primeira opção permite o acesso administrativo de uma máquina remota,<br />
e a segunda permite o acesso sem senha ao MySQL; nenhuma dessas opções é recomendável<br />
<strong>para</strong> o mínimo de segurança.<br />
Informe a senha de sua preferência <strong>para</strong> ser a senha principal do MySQL. No livro<br />
estamos considerando a senha root como a senha principal do MySQL: nesse caso,<br />
preencha root nos dois campos.<br />
Figura 1.49 – Tela de configuração de segurança.<br />
Se você já teve alguma vez instalado o MySQL em seu computador – mesmo que tenha<br />
desinstalado-o corretamente – a senha root definida continua valendo. Se você fizer uma<br />
nova instalação do MySQL essa senha será solicitada por meio do campo Current Password,<br />
que será exibido.<br />
1.5.1.2 Instalação do MySQL Workbench no Windows<br />
Para a instalação do MySQL Workbench é necessário instalar antes o .Net Framework<br />
(caso já não esteja instalado). Este é facilmente encontrado em qualquer<br />
site de downloads na internet, ou diretamente no site da Microsoft em http://www.<br />
microsoft.com/NET/.<br />
67
70<br />
1.5.2 Uso do MySQL Workbench<br />
<strong>Programação</strong> <strong>Java</strong> <strong>para</strong> a <strong>Web</strong><br />
Para acionar o MySQL Workbench no Windows, basta executá-lo no menu MySQL,<br />
enquanto no linux basta digitar mysql-workbench na linha de comando. Uma tela semelhante<br />
à da figura 1.50 será exibida.<br />
Nessa tela aparecem três colunas, com os aplicativos disponíveis, que são: SQL<br />
Development, Data Modeling e Server Administration.<br />
No decorrer deste livro vamos utilizar principalmente o SQL Development. O primeiro<br />
passo é clicar em New Connection, (menu Database ➤ Manage Connection ➤ New) <strong>para</strong> criar<br />
uma nova conexão, abrindo uma tela conforme a da figura 1.51.<br />
Figura 1.50 – Tela do MySQL Workbench.<br />
Informe um nome <strong>para</strong> a conexão em Connection Name e confirme as informações de<br />
Hostname, Port e Username. Se desejar guardar a senha do banco nesse aplicativo, clique<br />
em Store in Vault.<br />
Depois de configurada, abra a conexão que estará listada na tela principal. Será<br />
exibida a tela em que é possível executar os comandos SQL, conforme a figura 1.52.
Capítulo 1 ■ Pre<strong>para</strong>ção do ambiente de desenvolvimento<br />
1.6 Conclusão<br />
Figura 1.51 – Tela de configuração de conexão no MySQL Workbench.<br />
Figura 1.52 – Tela <strong>para</strong> execução de SQLs no MySQL Workbench.<br />
Finalizamos a instalação de todas as ferramentas que serão necessárias <strong>para</strong> o desenvolvimento<br />
do projeto proposto no livro. No decorrer da obra serão necessários novos downloads,<br />
apenas <strong>para</strong> instalação de componentes necessários aos projetos em construção.<br />
71