问题描述
我试图在我的数据库中添加一个新条目,在我有一个 JComboBox 的表单内。
我收到这个错误,我的第一个想法是我的 JComboBox 正在输入字符串,但我意识到我正在从 getCod_category 获取整数。前几分钟改了包名,虽然改成之前的样子也解决不了
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: class java.lang.Integer cannot be
cast to class crud.M.Categoria (java.lang.Integer is in module java.base of loader 'bootstrap';
crud.M.Categoria is in unnamed module of loader 'app')
我填写清单
try{
ResultSet datos = libroDAO.obtenerListaCategoria();
ResultSet datos2 = libroDAO.obtenerListaEditorial();
while(datos.next())
{
lstCategoriaLibro.addItem(datos.getInt(1));
}
while(datos2.next())
{
lstEditorialLibro.addItem(datos2.getInt(1));
}
}catch(Exception e){
JOptionPane.showMessageDialog(null,"ERROR");
}
这部分是当我向我的数据库添加一个新条目时。
feedback = libroDAO.adicionaLibro(Integer.valueOf(txtFieldsLibro[0].getText()),txtFieldsLibro[1].getText(),Double.valueOf(txtFieldsLibro[2].getText()),Integer.valueOf(txtFieldsLibro[3].getText()),((Categoria) lstCategoriaLibro.getSelectedItem()).getCod_categoria(),((Editorial) lstEditorialLibro.getSelectedItem()).getCod_editorial());
informarUsuario(feedback);
一个
public String adicionaLibro(int isbn,String nombre,double precio,int stock,int cCategoria,int cEditorial) {
LibroDAO libroDAO = new LibroDAO();
Libro libro = new Libro(isbn,nombre,precio,stock,cCategoria,cEditorial);
libroDAO.adiciona(libro);
String feedBack = "AGREGADO";
return feedBack;
}
我的 crud.model.Categoria
package crud.model;
public class Categoria {
private Integer cod_categoria;
private String nombre;
public Categoria(Integer cod_categoria,String nombre) {
this.cod_categoria = cod_categoria;
this.nombre = nombre;
}
public String getNombre() {
return nombre;
}
public Integer getCod_categoria() {
return cod_categoria;
}
public void setNombre(String nombre) {
this.nombre= nombre;
}
public void setCod_categoria(Integer cod_categoria) {
this.cod_categoria= cod_categoria;
}
@Override
public String toString() {
return String.format("Categoria ID:%d Nombre: %s ",cod_categoria,nombre);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)