Boa noite javamaniacos.
Estou com um problema que pode ou não ser simples.
Estou com problemas ao inserir uma String da JCOMBOBOX no valor do Campo INT do mysql
Ja tentei fazer um cast e não consegui e sempre me da esse erro
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "Jd penha"
at java.lang.NumberFormatException.forInputString(Unknown Source)
Segue os codigos
da classe DAO
package br.com.impacta.cliente.repository.jdbc;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Set;
import java.util.TreeSet;
import java.sql.PreparedStatement;
import javax.swing.JOptionPane;
import br.com.impacta.cliente.domain.exception.BairroException;
import br.com.impacta.cliente.domain.model.Bairro;
import br.com.impacta.cliente.domain.model.Municipio;
import br.com.impacta.cliente.domain.model.UFVO;
import br.com.impacta.cliente.repository.BairroDAO;
import br.com.impacta.cliente.repository.exception.DataBaseException;
public class DefaultBairroDAO implements BairroDAO {
@Override
public void inserir(Bairro domain) throws BairroException {
Connection connection;
PreparedStatement query;
String sql;
try { // abrir conexão
connection = DataSource.getConnection();
sql = "INSERT INTO bairro (nm_bairro,id_municipio)VALUES (?,?)";
try {
// criando consulta
query = connection.prepareStatement(sql);
// preparando consulta
query.setString(1, domain.getNome());
query.setString(2, domain.getMunicipio().toString());
// executar a consulta
int rows = query.executeUpdate();
// tratar os resultados
if (rows == 0) {
throw new BairroException("Deveria ter inserido");
}
} catch (SQLException cause) {
throw new BairroException("PROBLEMAS AO INSERIR BAIRRO", cause);
} finally {
// fechar conexão
DataSource.close(connection);
}
} catch (DataBaseException cause) {
throw new BairroException(cause);
}
}
Segue os dados da classe do botão Ok
package br.com.impacta.cliente.app.action.bairro;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.TreeSet;
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import br.com.impacta.cliente.app.view.CadastroBairroView;
import br.com.impacta.cliente.domain.model.Bairro;
import br.com.impacta.cliente.domain.model.Entidade;
import br.com.impacta.cliente.domain.model.Municipio;
import br.com.impacta.cliente.domain.model.UFVO;
import br.com.impacta.cliente.service.BairroService;
import br.com.impacta.cliente.service.impl.DefaultBairroService;
public class BairroOkAction implements ActionListener {
private JComboBox<Object> municipioJComboBox;
private JTextField nomeJTextField;
private JTable bairrosJTable;
private CadastroBairroView view;
public BairroOkAction(JComboBox<Object> municipioJComboBox,
JTextField nomeJTextField, JTable bairrosJTable,
CadastroBairroView view) {
super();
this.municipioJComboBox = municipioJComboBox;
this.setNomeJTextField(nomeJTextField);
this.bairrosJTable = bairrosJTable;
this.view = view;
}
@Override
public void actionPerformed(ActionEvent e) {
String NomeBairro = view.getNomeJTextField().getText();
String municipio = (String) view.getMunicipioJComboBox().getSelectedItem();
int i = Integer.parseInt(municipio);
Bairro domain;
try {
if (view.getaAlterar() != null) {
domain = (Bairro) view.getaAlterar();
} else {
domain = new Bairro();
}
domain.setNome(NomeBairro);
domain.setMunicipio(new Municipio(municipio));
view.getService().validar(domain);
view.getService().salvar(domain);
} catch (Exception cause) {
cause.printStackTrace();
JOptionPane.showMessageDialog(view, "erro ao carregar");
}
}
Se alguem puder me ajudar fico agradecido
