ResultSet nao recebe os dados pesquisados
15/05/2017
0
Senhores, boa tarde.
Estou com o seguinte problema:
"select veiculostransporte.id_veiculo, veiculostransporte.vei_descricao as descricao, veiculostransporte.vei_placa1, veiculostransporte.vei_capacidade, veiculostransporte.vei_capacidademaxima, veiculostransporte.vei_terceiros, veiculostransporte.vei_tipoprop, veiculostransporte.vei_ativo, motoristas.mot_tipo, motoristas.mot_nome, motoristas.mot_nomeabreviado, motoristas.mot_cnpjcpf, motoristas.mot_celular, motoristas.mot_ativo, motoristas.id_motorista, motoristas.id_codentidade, motoristas.id_codcidade, veiculostransporte.id_codcidade from dbo.veiculostransporte veiculostransporte inner join dbo.motoristas motoristas on (motoristas.id_motorista = veiculostransporte.id_motorista) where vei_placa1 = 'ABC-1234'"
Neste select acima eu consigo o resultado que eu quero, ou seja, informo a placa de um veiculo e consigo todas as informacoes que preciso.
Porem quando coloco isso no java, nao consigo o resultado.
A minha classe Java esta assim:
public class VeiculoTransporte implements Serializable{
public static final long serialVersionUID = 1L;
int Id_veiculo;
String descricao;
double capacidade;
String placa;
int id_motorista;
String nome;
int ativo;
boolean terceiro;
int tipoproprietario;
String celular;
int id_codcidade;
public int getId_veiculo() {
return Id_veiculo;
}
public void setId_veiculo(int id_veiculo) {
Id_veiculo = id_veiculo;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public double getCapacidade() {
return capacidade;
}
public void setCapacidade(double capacidade) {
this.capacidade = capacidade;
}
public String getPlaca() {
return placa;
}
public String setPlaca(String placa) {
return this.placa = placa;
}
public int getId_motorista() {
return id_motorista;
}
public void setId_motorista(int id_motorista) {
this.id_motorista = id_motorista;
}
public int getAtivo() {
return ativo;
}
public void setAtivo(int ativo) {
this.ativo = ativo;
}
public void setTerceiro(boolean terceiro) {
this.terceiro = terceiro;
}
public int getTipoproprietario() {
return tipoproprietario;
}
public void setTipoproprietario(int tipoproprietario) {
this.tipoproprietario = tipoproprietario;
}
public static long getSerialversionuid() {
return serialVersionUID;
}
public String getNome(String string) {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public boolean isTerceiro() {
return terceiro;
}
public String getCelular() {
return celular;
}
public void setCelular(String celular) {
this.celular = celular;
}
public int getId_codcidade() {
return id_codcidade;
}
public void setId_codcidade(int id_codcidade) {
this.id_codcidade = id_codcidade;
}
public String getNome() {
return nome;
}
e o meu DAO esta assim (coloquei o Metodo main, para ver se o resultado dava o que eu queria)
Os comandos de conexao de SQL esta corretos, pois criei uma classe de conexao e importei esta mesma classe para outros DAO´s e deu certo.
public class SelecionaVeiculoDAO {
public VeiculoTransporte buscarPorPlaca(VeiculoTransporte v) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("select veiculostransporte.id_veiculo, veiculostransporte.vei_descricao as descricao, veiculostransporte.vei_placa1, veiculostransporte.vei_capacidade, ");
sql.append("veiculostransporte.vei_capacidademaxima, veiculostransporte.vei_terceiros, veiculostransporte.vei_tipoprop, veiculostransporte.vei_ativo, ");
sql.append("motoristas.mot_tipo, motoristas.mot_nome, motoristas.mot_nomeabreviado, motoristas.mot_cnpjcpf, motoristas.mot_celular, motoristas.mot_ativo, ");
sql.append("motoristas.id_motorista, motoristas.id_codentidade, motoristas.id_codcidade, veiculostransporte.id_codcidade from dbo.veiculostransporte ");
sql.append("veiculostransporte inner join dbo.motoristas motoristas on (motoristas.id_motorista = veiculostransporte.id_motorista) where vei_placa1 = ? ");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString( 1, v.getPlaca() );
ResultSet resultado = comando.executeQuery();
VeiculoTransporte retorno = new VeiculoTransporte();
if (resultado.next()) {
retorno.setPlaca(resultado.getString("vei_placa1"));
retorno.setId_motorista(resultado.getInt("id_motorista"));
// retorno.getNome(resultado.getString("mot_nome"));
retorno.setId_codcidade(resultado.getInt("id_codcidade"));
}
return retorno;
}
public static void main(String[] args) throws SQLException {
VeiculoTransporte v = new VeiculoTransporte();
SelecionaVeiculoDAO dao = new SelecionaVeiculoDAO();
v.setPlaca("ABC-1234");
System.out.println(v.getPlaca());
dao.buscarPorPlaca(v);
System.out.println("Placa: " + v.getId_motorista());
System.out.println("Motorista: " + v.getNome());
System.out.println("Codigo da Cidade: " +v.getId_codcidade());
}
}
Estou com o seguinte problema:
"select veiculostransporte.id_veiculo, veiculostransporte.vei_descricao as descricao, veiculostransporte.vei_placa1, veiculostransporte.vei_capacidade, veiculostransporte.vei_capacidademaxima, veiculostransporte.vei_terceiros, veiculostransporte.vei_tipoprop, veiculostransporte.vei_ativo, motoristas.mot_tipo, motoristas.mot_nome, motoristas.mot_nomeabreviado, motoristas.mot_cnpjcpf, motoristas.mot_celular, motoristas.mot_ativo, motoristas.id_motorista, motoristas.id_codentidade, motoristas.id_codcidade, veiculostransporte.id_codcidade from dbo.veiculostransporte veiculostransporte inner join dbo.motoristas motoristas on (motoristas.id_motorista = veiculostransporte.id_motorista) where vei_placa1 = 'ABC-1234'"
Neste select acima eu consigo o resultado que eu quero, ou seja, informo a placa de um veiculo e consigo todas as informacoes que preciso.
Porem quando coloco isso no java, nao consigo o resultado.
A minha classe Java esta assim:
public class VeiculoTransporte implements Serializable{
public static final long serialVersionUID = 1L;
int Id_veiculo;
String descricao;
double capacidade;
String placa;
int id_motorista;
String nome;
int ativo;
boolean terceiro;
int tipoproprietario;
String celular;
int id_codcidade;
public int getId_veiculo() {
return Id_veiculo;
}
public void setId_veiculo(int id_veiculo) {
Id_veiculo = id_veiculo;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public double getCapacidade() {
return capacidade;
}
public void setCapacidade(double capacidade) {
this.capacidade = capacidade;
}
public String getPlaca() {
return placa;
}
public String setPlaca(String placa) {
return this.placa = placa;
}
public int getId_motorista() {
return id_motorista;
}
public void setId_motorista(int id_motorista) {
this.id_motorista = id_motorista;
}
public int getAtivo() {
return ativo;
}
public void setAtivo(int ativo) {
this.ativo = ativo;
}
public void setTerceiro(boolean terceiro) {
this.terceiro = terceiro;
}
public int getTipoproprietario() {
return tipoproprietario;
}
public void setTipoproprietario(int tipoproprietario) {
this.tipoproprietario = tipoproprietario;
}
public static long getSerialversionuid() {
return serialVersionUID;
}
public String getNome(String string) {
return this.nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public boolean isTerceiro() {
return terceiro;
}
public String getCelular() {
return celular;
}
public void setCelular(String celular) {
this.celular = celular;
}
public int getId_codcidade() {
return id_codcidade;
}
public void setId_codcidade(int id_codcidade) {
this.id_codcidade = id_codcidade;
}
public String getNome() {
return nome;
}
e o meu DAO esta assim (coloquei o Metodo main, para ver se o resultado dava o que eu queria)
Os comandos de conexao de SQL esta corretos, pois criei uma classe de conexao e importei esta mesma classe para outros DAO´s e deu certo.
public class SelecionaVeiculoDAO {
public VeiculoTransporte buscarPorPlaca(VeiculoTransporte v) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("select veiculostransporte.id_veiculo, veiculostransporte.vei_descricao as descricao, veiculostransporte.vei_placa1, veiculostransporte.vei_capacidade, ");
sql.append("veiculostransporte.vei_capacidademaxima, veiculostransporte.vei_terceiros, veiculostransporte.vei_tipoprop, veiculostransporte.vei_ativo, ");
sql.append("motoristas.mot_tipo, motoristas.mot_nome, motoristas.mot_nomeabreviado, motoristas.mot_cnpjcpf, motoristas.mot_celular, motoristas.mot_ativo, ");
sql.append("motoristas.id_motorista, motoristas.id_codentidade, motoristas.id_codcidade, veiculostransporte.id_codcidade from dbo.veiculostransporte ");
sql.append("veiculostransporte inner join dbo.motoristas motoristas on (motoristas.id_motorista = veiculostransporte.id_motorista) where vei_placa1 = ? ");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString( 1, v.getPlaca() );
ResultSet resultado = comando.executeQuery();
VeiculoTransporte retorno = new VeiculoTransporte();
if (resultado.next()) {
retorno.setPlaca(resultado.getString("vei_placa1"));
retorno.setId_motorista(resultado.getInt("id_motorista"));
// retorno.getNome(resultado.getString("mot_nome"));
retorno.setId_codcidade(resultado.getInt("id_codcidade"));
}
return retorno;
}
public static void main(String[] args) throws SQLException {
VeiculoTransporte v = new VeiculoTransporte();
SelecionaVeiculoDAO dao = new SelecionaVeiculoDAO();
v.setPlaca("ABC-1234");
System.out.println(v.getPlaca());
dao.buscarPorPlaca(v);
System.out.println("Placa: " + v.getId_motorista());
System.out.println("Motorista: " + v.getNome());
System.out.println("Codigo da Cidade: " +v.getId_codcidade());
}
}
Weldes Goncalves
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)