Conecção com o Banco

10 respostas
diegocrs

Olá a todos

Estou inciando em JSP e estou fazendo uma conecção com o banco de dados mysql, sendo que nao estou conseguindo! Estou acompanhando uma apostila que fala para colocar o driver do mysql na pasta lib, porém nao fala em qual pasta lib que tenho que colocar, então coloquei na pasta do Mysql msm. mas msm assim não esta inserindo e nem consultando!

O que pode ser isso?

Atenciosamente,

Diego

10 Respostas

F

Olá Diego;

Seria bom você postar o código e o erro para melhor lhe ajudarmos.

Costumo colocar a biblioteca em \JAVA\JRE\LIB\EXT ou adicionar ela no projeto (utilizo o netbeans).

Abraço

Marco A.

diegocrs

Assim…

Eu estou usando o Eclipse…

a conecção está sendo feita assim: (“mysql//locahost/db”,“diego”,“planet”);

ajfilho

Bom, a primeira vista parece que sua URL de conexão está incompleta, o certo seria:

jdbc:mysql://localhost/db

Mas seria importante você postar o código completo para ajudá-lo melhor.

Abraços!

diegocrs
<%@ page language="java"
contentType="text/html"
pageEncoding="ISO-8859-1"
import="java.sql.*"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<title>Trabalhando com Banco de dados usando JDBC e JSP</title>
</head>
<body>
<table border="1">
<thead>
<tr>
<th>ISBN</th><th>Título</th>
</tr>
</thead>
<tbody>
<%
Connection conn = null;
Statement st = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn =
DriverManager.getConnection("jdbc:mysql://localhost/db",
"diego","planet");
st = conn.createStatement();
rs = st.executeQuery("select isbn, titulo from livros");
while(rs.next()) {
%>
<tr>
<td><%= rs.getString("isbn") %></td>
<td><%= rs.getString("titulo") %></td>
</tr>
<%
} //end while[img][/img]
} catch (Exception ex) {
ex.printStackTrace();
} finally {
if (rs != null) rs.close();
if (st != null) st.close();
if (conn != null) conn.close();
}
%>
</tbody>
</table>
</body>
</html>

esse é o codigo

F

Olá Diego;

Tente algo assim:

String de conexão:

static final String url = "jdbc:mysql://192.100.10.XX:3306/seuBanco";
    static final String driver = "com.mysql.jdbc.Driver";
    static final String user = "root";
    static final String password = "1111";

Agora um método simples para consulta utilizando a conexão acima:

public String selTitulo(){
        Connection conn=null;
        PreparedStatement ps=null;
        ResultSet rs=null;

        String nome=null;
        
        String sqlSelProd = "SELECT ProdNome FROM Produto WHERE ProdCod='1001'";
                                                                                                                                          
        try {
            Class.forName(driver);
        }
        catch (ClassNotFoundException ex) {
            ex.printStackTrace();
        }
        
        try {
            conn=DriverManager.getConnection(url,user,password);
            ps=conn.prepareStatement(sqlSelProd);
             
            rs=ps.executeQuery();
            
            while (rs.next()) {
                nome=rs.getString(1);
                //nome=rs.getString("ProdNome"); assim também dá
            }
            
        } 
        catch (SQLException ex) {
            ex.printStackTrace();
        }
        
        return nome;
    }

Estuda o código, se tiver dúvidas posta aki!

Abração

MArco Aurélio

ajfilho

já tentaste tirar esse .newInstance() da linha

Class.forName("com.mysql.jdbc.Driver").newInstance();

Pode resolver…

Abraços!

diegocrs

Esse [size=18]Static final[/size] eu coloco onde?

E se eu tirar esse newInstance() irá funcionar?

T

Cole o erro q aparece no seu console…

mas

Tente assim:

<%@ page language="java"  
contentType="text/html"  
pageEncoding="ISO-8859-1"  
import="java.sql.*"  
%>  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />  
<title>Trabalhando com Banco de dados usando JDBC e JSP</title>  
</head>  
<body>  
<table border="1">  
<thead>  
<tr>  
<th>ISBN</th><th>Título</th>  
</tr>  
</thead>  
<tbody>  
<%  
Connection conn = null;  
PreparedStatement pstmt = null;  
ResultSet rs = null;  
try {  
Class.forName("com.mysql.jdbc.Driver");  
conn =  
DriverManager.getConnection("jdbc:mysql://localhost:3306/db",  
"diego","planet");  
pstmt = conn.createStatement();  
rs = pstmt.executeQuery("select isbn, titulo from livros");  
while(rs.next()) {  
%>  
<tr>  
<td><%= rs.getString("isbn") %></td>  
<td><%= rs.getString("titulo") %></td>  
</tr>  
<%  
} //end while
} catch (Exception ex) {  
ex.printStackTrace();  
} finally {  
if (rs != null) rs.close();  
if (psmt != null) pstmt.close();  
if (conn != null) conn.close();  
}  
%>  
</tbody>  
</table>  
</body>  
</html>
diegocrs

O problema é esse.

não aparece esse nenhum.
quando vou verificar se está ok? não está

skalinichenko

Então cara, o nome certo é “conexão” :smiley:
Se ainda não conseguiu, verifica a porta de acesso ao banco, por exemplo. Ou sem a porta mesmo, sem o :xxxx.
Lembro de um dia, demorar muito, postar várias vezes e esquecer de verificar qual porta o meu banco disponibilizava para conexão.
Pelos exemplos dos colegas que postaram, URL e demais, estão corretos.
Flw!

Criado 18 de dezembro de 2008
Ultima resposta 18 de dez. de 2008
Respostas 10
Participantes 5