Conectar jsp com mysl

5 respostas
alexandremanowar

E a e pessoal blz

Eu uso sistema operacional linux mandriva 2007, tenho instalado o jdk 6 e tomcat 6.0.10 e tenho instalado o mysql 5, gostaria de saber como eu faço conexão com o mysql no linux usando jsp e como eu faço uma conexão e sirva para todas as páginas? Eu li algo sobre listener que é usado no xml mas não entendi direito, pelo que eu entendi eu faço um servlet java que faz a conexão e carrego ela em um listener no xml mas não entendi direito alguém poderia me explicar?
Aproveitando o POST eu gostaria de saber também como eu gravo cookie e como eu leio cookie gravado para exibir os dados na tela?

Soi iniciante em jsp e gostaria de aprender isso
Obrigado

5 Respostas

L

Olha rapaz, vamos com calma. Você já consegue conectar com o MySQL via JDBC em uma aplicação Java (sem usar WEB)?

diguix

Caro Alexandre vamos por etapa…
… tem um material da caelum aonde vc pode encontrar tudo o que vc precisa, segue o link:
http://www.caelum.com.br/caelum/curso-21.jsp
daí é só fazer download do material e resolver seu problema.

qlq duvida a mais estamos ai… Abs’ []

alexandremanowar

Olá pessoal, obrigado pela ajuda.
Então eu já programava em java para desktop e eu fazia a conexão assim:

try{ 
   Class.forName("com.mysql.jdbc.Driver"); 

   Connection con =    DriverManager.getConnection("jdbc:mysql://localhost/banco"); 

   Statement stmt = con.createStatement();

Eu sei que é dessa forma que eu tenho que colocar no servlet mas não sei depois como criar um listener no xml para puxar essa conexão para ficar para todas as páginas do projeto?
Pelo que eu li eu crio um listener no xml que puxa esse servlet de conexão aí nos outros servlets ou jsp eu apenas puxo o resultado do listener. Essas coisas muda um pouco de desktop para web sou iniciante em web mas já mexia um pouco com java desktop agora eu gostaria de migrar então estou estudando.
Vocês poderiam me dar um exemplo de como fazer isso? A detalhe eu não uso IDE não gosto, não sei se isso é bom ou ruim, eu acho que o IDE atrapalha um pouco para colocar o css e alguns javascript que eu uso. Esse tutorial que o diguix é bacana mas é baseado no eclipse eu gostaria de fazer na unha.
Me ajudem por favor! obrigado

alexandremanowar

Então galera estou fazendo a minha conexão aqui e é o seguinte baixei o arquivo mysql connector e descompactei ele no opt e criei o classpath da seguinte forma:

#!/bin/sh 
export JAVA_HOME=/opt/jdk
export PATH=$JAVA_HOME/bin:$PATH

TOMCAT_HOME=/opt/apache-tomcat-6.0.10;export JAVA_HOME


CLASSPATH=$CLASSPATH:$JAVA_HOME\jre\lib:$JAVA_HOME\jre\lib\tools.jar:/opt/mysql-connector-java-5.0.5/mysql-connector-java-5.0.5-bin.jar:$JAVA_HOME/lib
export CLASSPATH

Gostaria de saber se o modo que criei o calsspath esta legal?
O tomcat e o java estão funcionando, ainda não consegui testar o mysql porque ainda não consegui testar a conexão
fiz um servlet de coneão dessa forma:

Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/BANCO_DE_DADOS?user=root&password=root");
Statement stm = conn.createStatement();

Agora só falta criar um listener no xml e distribuir nas outras páginas do projeto e ainda não consegui. Alguém porderia analisar o trabalho que fiz acima e me ajudar com o que falta?
obrigado

alexandremanowar

E ae pessoal, continuando meus estudos, li alguns tutoriais e achei um jeito legal de usar mysql com jsp. Eu criei uma classe de conexão e implento ela nas jsp, olha como estou fazendo:
Essa é a classe java:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public final class Conexao{
    public static Connection conectar(){
        // base de dados é "test"
        String url = "jdbc:mysql://localhost/test";
        String usuario = "root";
        String senha = "";
        
        try{
           Class.forName("com.mysql.jdbc.Driver").newInstance();
           Connection conn = DriverManager.getConnection(url, usuario, senha);
           return conn;
        } 
        catch(SQLException ex){
           System.err.println("SQLException: " + ex.getMessage());
           System.err.println("SQLState: " + ex.getSQLState());
           System.err.println("VendorError: " + ex.getErrorCode());
           return null;
        }
        catch(Exception e){
           System.err.println("Problemas ao tentar conectar com o banco de dados");
           return null; 
        }
    }
}

Essa é a jsp

<%@ page language="java" import="java.sql.*, estudos.Conexao" %>
<html>
<head><title>Aprendendo JSP</title>
</head>
<body>

<%
  Connection conn = Conexao.conectar();
  
  // testa se a conexão foi efetuada com sucesso
  if(conn != null)
    out.println("Conexão efetuada com sucesso!"); 
%>

</body>
</html>

Dessa forma eu tenho uma única classe e posso usar em todas minhas jsp
O que vcs acharam? ficou bom? Ou existe uma forma melhor? Opinem por favor estou estudando e quero aprender a melhor forma.
Obrigado

Criado 3 de abril de 2007
Ultima resposta 5 de abr. de 2007
Respostas 5
Participantes 3