Cargar datos en ComboBox no repetidos
Publicado por Luis David (11 intervenciones) el 12/06/2018 16:40:11
Tengo un objeto Coche que tiene atributos Matrícula, marca, modelo, nombre_cliente y fecha_entrada. Quiero poder filtrar en una combobox los objetos coches mediante las marcas que existan. He conseguido mostrar todas las marcas existentes pero repetidas. La lista se obtiene de una base de datos ¿Como puedo obtener esas marcas sin repetir?. He pensado en realizar una consulta SQL. Muestro el código que tengo y el resultado, como ya he dicho de Marcas repetidas.
Esto es lo que tengo asignado en el ComboBox
Y lo que obtengo es esto:

El método llamado de imp.getAll() es el siguiente:
GRACIAS DE ANTEMANO!!
Esto es lo que tengo asignado en el ComboBox
1
2
3
4
5
6
7
8
9
JComboBox comboBox = new JComboBox();
CarDAOImp imp = new CarDAOImp();
List<CarDTO> lista = imp.getAll();
for (int i = 0; i < lista.size(); i++) {
comboBox.addItem(lista.get(i).getMarca());
}
comboBox.setBounds(38, 119, 358, 19);
panel_Filtar.add(comboBox);
Y lo que obtengo es esto:

El método llamado de imp.getAll() es el siguiente:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
@Override
public List<CarDTO> getAll() {
List<CarDTO> coches = new LinkedList<CarDTO>();
try {
Statement statement = (Statement) connection.createStatement();
ResultSet resultSet = ((java.sql.Statement) statement).executeQuery(FIND_ALL);
CarDTO coche = null;
while (resultSet.next()) {
coche = new CarDTO();
coche.setMatricula(resultSet.getString("Matricula"));
coche.setMarca(resultSet.getString("Marca"));
coche.setModelo(resultSet.getString("Modelo"));
coche.setNombre_Cliente(resultSet.getString("Nombre_cliente"));
coche.setFecha_Entrada(resultSet.getString("Fecha_Entrada"));
System.out.println(coche.toString());
coches.add(coche);
}
resultSet.close();
(statement).close();
} catch (SQLException e) {
//e.printStackTrace();
throw new RuntimeException(e);
}
return coches;
GRACIAS DE ANTEMANO!!
Valora esta pregunta


0