Problema com import java.sql.PreparedStatement
Saudaçoes caros programadores Java.
Estou seguindo o curso da devmedia introduçao a jsf, do Dyego Carmo, e em uma das suas aulas tem o seguinte
codigo.
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
Porem, no meu netbeans 6.7, na linha 20 dá o seguinte erro
"incompatible types
required: java.sql.PreparedStatement
found : java.sql.Statement"
então pede pra converter getPreparedStatement(...) para PreparedStatement(...)
o código está igual ao da video-aula, mas no meu código dá esse erro, e na video-aula não, o que poderia ser ?
alguma biblioteca ou jar faltando ?
o banco de dados é jabaDB.
Agradeço se alguem puder me ajudar.
dhigoos@bol.com.br
Estou seguindo o curso da devmedia introduçao a jsf, do Dyego Carmo, e em uma das suas aulas tem o seguinte
codigo.
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.LinkedList;
import java.util.List;
Porem, no meu netbeans 6.7, na linha 20 dá o seguinte erro
"incompatible types
required: java.sql.PreparedStatement
found : java.sql.Statement"
então pede pra converter getPreparedStatement(...) para PreparedStatement(...)
o código está igual ao da video-aula, mas no meu código dá esse erro, e na video-aula não, o que poderia ser ?
alguma biblioteca ou jar faltando ?
o banco de dados é jabaDB.
Agradeço se alguem puder me ajudar.
dhigoos@bol.com.br
Rodrigo Vieira
Curtidas 0
Respostas
Paulo Leite
28/02/2010
Olá Rodrigo, eu tb já segui esse curso um tempo atrás e tb me lembro de ter um erro desse tipo,
O que ocorre é que eu tinha esquecido de criar o Statement stmt;
PreparedStatement ps = con.prepareStatement("Insert ... values(?,?,?,?)"); // con. é a referencia para a sessão da ConectionFactory que vai executar a sql e inserir o parametros ?,?,?.
ps.getString(1, unidadeMedida.getMed_nome());
ps.setString(2, ...
.....
/
Verifique se vc está atribuindo o PS a uma sessão da Conectionfactory, que retorna uma instancia de conexao ao seu banco de dados.
Esse getPreparedStatement provávelmente tem que um retorno do Tipo Statement. verifique isso no método getPreparedStatement.
OK abraço.
O que ocorre é que eu tinha esquecido de criar o Statement stmt;
PreparedStatement ps = con.prepareStatement("Insert ... values(?,?,?,?)"); // con. é a referencia para a sessão da ConectionFactory que vai executar a sql e inserir o parametros ?,?,?.
ps.getString(1, unidadeMedida.getMed_nome());
ps.setString(2, ...
.....
/
Verifique se vc está atribuindo o PS a uma sessão da Conectionfactory, que retorna uma instancia de conexao ao seu banco de dados.
Esse getPreparedStatement provávelmente tem que um retorno do Tipo Statement. verifique isso no método getPreparedStatement.
OK abraço.
GOSTEI 0
Rodrigo Vieira
28/02/2010
Agradeço pela resposta, vou tentar o que voce me falou, qualquer coisa te retorno, valeu irmão,
obrigado pela dica.
GOSTEI 0
Luis Garcia
28/02/2010
Rodrigo, boa noite.
Não cheguei a ver a video aula que mencionou, mas vou mostrar +/- o fluxo de uma consulta via jdbc:
Connection conn = null;
PreparedStatement ps = null;
try {
Class.forName("driver_banco").newInstance();
conn = DriverManager.getConnection("jdbc:estancia_banco", "usuario_banco", "senha_banco");
ps = conn.prepareStatement("insert into table values(?,?,?)");
ps.setString(1,"A");
ps.setString(2,"B");
ps.setString(3,"C");
ps.execute();
} catch(SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
if (ps != null) {
ps.close();
conn.close();
} else {
conn.close();
}
}
}
Esse método de getPreparedStatement deve estar encapsulando a conexão do banco.
Qualquer dúvida dê um alô.
Abraço, Garcia.
Não cheguei a ver a video aula que mencionou, mas vou mostrar +/- o fluxo de uma consulta via jdbc:
Connection conn = null;
PreparedStatement ps = null;
try {
Class.forName("driver_banco").newInstance();
conn = DriverManager.getConnection("jdbc:estancia_banco", "usuario_banco", "senha_banco");
ps = conn.prepareStatement("insert into table values(?,?,?)");
ps.setString(1,"A");
ps.setString(2,"B");
ps.setString(3,"C");
ps.execute();
} catch(SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
if (ps != null) {
ps.close();
conn.close();
} else {
conn.close();
}
}
}
Esse método de getPreparedStatement deve estar encapsulando a conexão do banco.
Qualquer dúvida dê um alô.
Abraço, Garcia.
GOSTEI 0
Camilo Lopes
28/02/2010
dar uma olhada nesse meu post blog
GOSTEI 0
Rodrigo Vieira
28/02/2010
Agradeço a sugestão e a atençao de todos os programadores que me ajudaram e responderam,
vou tentar por em pratica as respostas de todos, assim que conseguir avisarei.
mais uma vez obrigado.
vou tentar por em pratica as respostas de todos, assim que conseguir avisarei.
mais uma vez obrigado.
GOSTEI 0
Rodrigo Vieira
28/02/2010
dar uma olhada nesse meu post blog
obrigado pela sugestão, vou fazer as alteraçoes e ver se dar certo. valeu.
GOSTEI 0
Rodrigo Vieira
28/02/2010
Rodrigo, boa noite.
Não cheguei a ver a video aula que mencionou, mas vou mostrar +/- o
fluxo de uma consulta via jdbc:
Connection conn = null;
PreparedStatement ps = null;
try {
Class.forName("driver_banco").newInstance();
conn = DriverManager.getConnection("jdbc:estancia_banco",
"usuario_banco", "senha_banco");
ps = conn.prepareStatement("insert into table values(?,?,?)");
ps.setString(1,"A");
ps.setString(2,"B");
ps.setString(3,"C");
ps.execute();
} catch(SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
if (ps != null) {
ps.close();
conn.close();
} else {
conn.close();
}
}
}
Esse método de getPreparedStatement deve estar encapsulando a conexão do banco.
Qualquer dúvida dê um alô.
Abraço, Garcia.
Não cheguei a ver a video aula que mencionou, mas vou mostrar +/- o
fluxo de uma consulta via jdbc:
Connection conn = null;
PreparedStatement ps = null;
try {
Class.forName("driver_banco").newInstance();
conn = DriverManager.getConnection("jdbc:estancia_banco",
"usuario_banco", "senha_banco");
ps = conn.prepareStatement("insert into table values(?,?,?)");
ps.setString(1,"A");
ps.setString(2,"B");
ps.setString(3,"C");
ps.execute();
} catch(SQLException e) {
e.printStackTrace();
} finally {
if (conn != null) {
if (ps != null) {
ps.close();
conn.close();
} else {
conn.close();
}
}
}
Esse método de getPreparedStatement deve estar encapsulando a conexão do banco.
Qualquer dúvida dê um alô.
Abraço, Garcia.
valeu amigo, vou tentar sua sugestão, obrigado pela ajuda.
GOSTEI 0
Rodrigo Vieira
28/02/2010
Olá Rodrigo, eu tb já segui esse curso um tempo atrás e tb me lembro de ter um erro desse tipo,
O que ocorre é que eu tinha esquecido de criar o Statement stmt;
PreparedStatement ps = con.prepareStatement("Insert ... values(?,?,?,?)"); // con. é a referencia para a sessão da ConectionFactory que vai executar a sql e inserir o parametros ?,?,?.
ps.getString(1, unidadeMedida.getMed_nome());
ps.setString(2, ...
.....
/
Verifique se vc está atribuindo o PS a uma sessão da Conectionfactory, que retorna uma instancia de conexao ao seu banco de dados.
Esse getPreparedStatement provávelmente tem que um retorno do Tipo Statement. verifique isso no método getPreparedStatement.
OK abraço.
O que ocorre é que eu tinha esquecido de criar o Statement stmt;
PreparedStatement ps = con.prepareStatement("Insert ... values(?,?,?,?)"); // con. é a referencia para a sessão da ConectionFactory que vai executar a sql e inserir o parametros ?,?,?.
ps.getString(1, unidadeMedida.getMed_nome());
ps.setString(2, ...
.....
/
Verifique se vc está atribuindo o PS a uma sessão da Conectionfactory, que retorna uma instancia de conexao ao seu banco de dados.
Esse getPreparedStatement provávelmente tem que um retorno do Tipo Statement. verifique isso no método getPreparedStatement.
OK abraço.
valeu amigo, vou tentar sua sugestão, obrigado pela ajuda.
GOSTEI 0