17 de October de 2010

Conectar java web no banco MySQL, Tomcat, NetBeans e Windows 7

Hoje vou ensinar como conectar o JavaEE (web) no banco de dados MySQL, utilizando o Windows 7,  antes de aprender eu não encontrei algo que realmente fosse viável na internet, apenas uma dica aqui, outra ali, e assim vai, aqui vou tentar mostrar com o máximo de detalhes como realizar esta operação, lembrando que vamos utilizar o Windows 7 que pra mim esta sendo bucha até agora.

Primeiramente pra trabalhar com o Java vamos utilizar a IDE NetBeans, que na minha opinião é a melhor principalmente para iniciantes.

Você pode encontra-lo para download em:

http://netbeans.org/downloads/

A versão que indico é a mais complete, que tem aproximadamente 319 MB

Lembrando também que você tem que ter instalado em sua maquina o pacote JDK do Java para trabalhar com desenvolvimento Java.

Você pode encontra-lo para download em:

https://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetail-Start?ProductRef=jdk-6u22-oth-JPR@CDS-CDS_Developer

Basta selecionar a opção para seu sistema operacional.

Para realizar a conexão com o banco de dados MySQL precisamos também de um Driver de conexão, este “bendito”  driver que foi meu maior problema, pois cada um dizia uma coisa, e no final das contas eu ficava sem saber qual era o certo, então finalmente encontrei um artigo pra Linux no qual oferecia o link do driver correto que no caso é:

http://www.mysql.com/downloads/connector/j/

também hospedei eim:

http://www.4shared.com/file/FxoH5hv4/mysql-connector-java-5113-bin.html

Para que não haja dúvidas quanto ao download do driver.

Provavelmente terá que fazer um cadastro no site do MySQL, que é gratuito e bem rápido, sem maiores problemas.

Depois que baixar descompacte o pacote, dentro dele terá um arquivo Java chamado “mysql-connector-java-5.1.13-bin.jar” é este meu Driver para conexão, agora você terá que colocar ele dentro da pasta do Java, lembrando que você tem que ter instalado o pacote JDK, este arquivo teremos que colocar neste exato caminho:” C:\Program Files\Java\jre6\lib\ext” cole ele dentro desta pasta ext, pronto, já guardamos nosso driver de conexão.

Antes de criar um projeto pessoal precisamos de um servidor para roda-los, que no caso vamos utilizar o Apache Tomcat 6.0, que pode ser encontrado em:

http://linorg.usp.br/apache//tomcat/tomcat-6/v6.0.29/bin/apache-tomcat-6.0.29-windows-x86.zip

Mas se caso seu Windows não for 32bits, veja na lista qual é de sua preferencia:

http://tomcat.apache.org/download-60.cgi

Nem preciso dizer que é pra instalar também né ;)

Pronto, finalmente vamos por a mão  na massa, abra o NetBeans, vamos em:

Arquivo -> Novo Projeto

Vai abrir uma janela de qual plataforma vamos utilizar, então clicamos em:

Java web -> Aplicativo web

Logo após em Próximo, de um nome para o projeto, depois clique em Próximo novamente, agora vamos configurar o servidor Tomcat, provavelmente vai estar selecionado como padrão o GlassFish, para isso basta clicar em Adicionar, vai abrir uma janela com uma lista de servidores, selecione Tomcat 6.0, e clicar em Proximo, agora teremos que colocar a localização do servidor clicando em Navegador agora basta ir em “C:\Program Files\Apache Software Foundation\Tomcat 6.0”, basta selecionar a pasta onde foi instalado o Tomcat, depois basta clicar em finalizar, agora voltou para nossa pagina de de Servidores, provavelmente desta vez já terá o Tomcat selecionado, então basta clicar em Finalizar.

Agora olhe no canto esquerdo, vai ter uma paleta chamada projetos, é ai que estão nosso projetos,  ele ciou automaticamente subpastas, a META-INF e a WEB-INF, que não vou estar explicando seu significado, pelo menos não por enquanto, ele também montou para nós um arquivo Index automaticamente, mas vamos despreza-lo no momento.

Agora clique com o botão direito em cima de “Páginas Web” ->”Novo”->”Classe Java

De um nome para a Classe, que no caso vou utilizar de “ClasseConexao”, logo após clique em finalizar, lembrando que estou fazendo das formas mais BASICAS, então não estou criando pacotes, muito menos seguindo padrões, vou realizar estas operações nos próximos artigos.

Ele já trouxe pra gente o seguinte escopo:


public class ClasseConexao {<span style="text-decoration: underline;">//nome da nossa classe criada</span>

}

Olha que legal, já temos uma classe, agora teremos que criar um método que vai conter meu carregamento do driver, e minha ação de conexão.

Lembrando que quando vamos trabalhar com dados externos no Java temos que utilizar tratamento de erro, se não ele nem compila. Pois zé, só realizando esta operação nosso sistema fica mais seguro, fora que mais completo também.

Nosso tratamento de será o try, catch:


Try{

Funções

}catch(Respectivo erro da função     variável_que_recebe_o_erro){

Podemos colocar um texto de exibição + o variável que contem o erro, para sabermos ao certo qual foi o erro

}

Então chega de conversa e vamos ao que interessa.


import java.sql.*; // importa todos os components necessaries

public class ClasseConexao {//inicia nossa classe Conexao

public void conecta(){ //cria nosso metodo conecta()

try{//inicia nosso tratamento

Class.forName("com.mysql.jdbc.Driver");// carrega o nosso driver MySQL que passamos pra pasta ext do java

System.out.println("Carregou o Driver"); // se caso carregar o driver ele exibe esta mensagem

Connection con = DriverManager.getConnection("jdbc:mysql://localhost/nic","root","");

// o Connection é quem vai realizer a operação de conexão, para isso ele precisa de 3 parametros, url, usuário do banco, e senha.

//o nosso link para conexão é “jdbc:mysql://localhost/nome_do_seu_banco” o meu banco é nic

System.out.println("Conectou Corretamente");// se caso conectar exibe esta mensagem

}

catch(ClassNotFoundException erroClass){//é o erro especifico da Classe de carrega nosso driver

System.out.println("Erro ao carregar o Driver" + erroClass);

//se caso ele naõ conseguir carregar o driver, ele vai exibir esta mensagem, + o erro

}

catch(SQLException erroSQL){//SQLException -> é o erro especifico do Connection

System.out.println("Erro ao Conectar com o Banco"+erroSQL);

//se caso ele não conseguir conecar ele vai exibir esta mensagem + o erro especifico

}

}

//temos que criar também um metodo principal, para realizer nossa conexao propriamente dita, se não ele nem executa, pois não tem método principal

public static void main(String[] args){ //escopo de nosso metodo principal

new ClasseConexao().conecta(); //iniciamos nosso método conecta(), dentro da nossa ClasseConexao();

}

}

Tecle Shift+F6 para executar este arquivo em especifico, ele vai carregar e logo após ele vai abrir nosso Apache Tomcat.

Lembrando que para testar nosso servidor Apache Tomcat, basta ir em um navegador e digitar localhost:8080 se caso não obter resultado provavelmente o serviço não foi startado, sendo que ele é startado logo após a instalação, então verifique se o Windows 7 não bloqueou este serviço, no meu caso tinha bloqueado, fora isso tive que ir na pasta do “Tomcat”,e do “Java” e mudar as propriedades de segurança para todos os usuários, pois ele não deixava nem alterar algum registro, vão perceber isso quando tentarem colocar o driver dentro da pasta do Java, ou então excluir algum arquivo. Ele também não vai rodar o ícone de status do Tomcat que fica ao lado do relógio do Windows, para executa-lo vá na pasta “C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin” clique com o botão direito em “tomcat6w” e clique em “Executar como Administrador” basta confirmar e então o Status vai se abrir, se caso esteja Startado, então de um Stop e inicie novamente, pois pra ele reconhecer o Driver do MySQL que colocamos lá dentro, ele precisa ser reiniciado.

Se mesmo depois de tudo isso ele não ter executado, tente colocar o driver do mysql dentro da pasta WEB-INF , pode ser que ajude.

Espero que tenha ajudado vocês companheiros, se tiver dúvidas o que provavelmente vai ter, basta postar nos comentários ;)

Share this article

3 Comentários / Trackbacks

  1. Hi! Is it alright that I go a bit off topic? I’m trying to view your domain on my new iPhone but it doesn’t display properly, any suggestions? Cheers! Isreal

  2. Legal o Post.

    lembrando que dentro da pasta WEB-INF, tem uma pasta lib. Você pode colocar o driver lá também. =D

    Tem também algumas opções de você colocar no próprio servidor de aplicação, assim o seu projeto vai ficar um pouco mais leve, já que não vai precisar botar o driver em cada um dos projetos separadamente. =D

    • adriano

      Obrigado por comentar, olha que legal, poderia informar como faz este procedimento?
      Abraçoss

Deixe uma resposta




XHTML: Você pode usar essas tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Email
Print