Como recebo num combobox uma coluna do banco de dados?

Boa noite, gostaria de saber como é possivel na parte de aluguel tem 2 combobox, eu quero pegar a combobox veiculo, ir na tabela veiculo e pegar o atributo modelo para retornar a combobox, tem que pegar a combobox cliente tbm, ir na tabela cliente e pegar o atributo nomecliente e retornar para a combobox cliente e jogar ambas nos seus respectivos statements, estou usando
“stmt.setObject(2, aluguel.getVeiculo());” e stmt.setObject(5, aluguel.getCliente()); porem não está funcionando,estou usando o padrão mvc desde já grato.

ClienteDAO:
package dao;

import model.Cliente;//importação do cliente no pacote entidades
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

public class ClienteDAO 
{
    
    private final Connection conexao;
    
    //metodo construtor de conexao
    
    public ClienteDAO(Connection conexao)
    {
        
        this.conexao = conexao;
        
    }
    
    //função inserir
    public void inserir(Cliente cliente) throws SQLException//passar para a função um cliente do tipo cliente dentro de entidade, caso nao consiga joga uma sqlexception
    {
        
            //jogue na string sql o comando sql os valores respectivos no banco de dados
            String sql = "INSERT INTO cliente(nomecliente,endereco,uf,telefone,cpf,email) values (?,?,?,?,?,?); ";//cria string sql
            PreparedStatement stmt = conexao.prepareStatement(sql);
            
            stmt.setString(1,cliente.getNomecliente());//statement seta string 1=? o que vir de cliente.getNomecliente()
            stmt.setString(2,cliente.getEndereco());//statement seta string 2=? o que vir de cliente.getEndereco()
            stmt.setString(3,cliente.getUf());//statement seta string 3=? o que vir de cliente.getUf().
            stmt.setString(4,cliente.getTelefone());//statement seta string 4=? o que vir de cliente.getTelefone()
            stmt.setLong(5, cliente.getCpf());//statement seta string 5=? o que vir de cliente.getCpf()
            stmt.setString(6, cliente.getEmail());//statement seta string 6=? o que vier de cliente.getEmail()
            
            //efetua a execução no banco de dados
            stmt.execute();
    }        

    //função excluir
    public void deletar(Cliente cliente) throws SQLException
    {
        
        String sql = "DELETE FROM cliente WHERE cpf = ?";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setLong(1, cliente.getCpf());//statement seta string 1=? o que vir de cliente.getCpf()
        stmt.execute();//efetua a execução no banco de dados
        
    }
    
    //função selecionar tudo
    public ArrayList<Cliente> selecioneTudo() throws SQLException//tras lista de cliente
    {
        
        String sql = "SELECT * FROM cliente";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        return pesquisa(stmt);//pesquisa o statement
        
    }
    
    //metodo pesquisa abstraido
    private ArrayList<Cliente> pesquisa(PreparedStatement stmt) throws SQLException {//cria função pesquisa, recebe o statement e retorna lista de cliente
        
        ArrayList<Cliente> clientes = new ArrayList<Cliente>();//crie um arraylist de cliente
        
        stmt.execute();//efetua a execução no banco de dados
        //traga o resultado
        ResultSet resultSet = stmt.getResultSet();
        
        while(resultSet.next())//enquanto estiver lendo linhas
        {
            
            String nomecliente = resultSet.getString("nomecliente");//o que vir de resultset.getString("nomecliente");
            String endereco = resultSet.getString("endereco");//o que vir de resultset.getString("endereco");
            String uf = resultSet.getString("uf");//o que vir de resultset.getString("uf");
            String telefone = resultSet.getString("telefone");//o que vir de resultset.getString("telefone");
            Long cpf = resultSet.getLong("cpf");//o que vir de resultset.getString("cpf");       
            String email = resultSet.getString("email");//o que vier de resultset.getString("email")
            
            Cliente clientecomBancoDados = new Cliente(nomecliente, endereco, uf, telefone, cpf, email);
            clientes.add(clientecomBancoDados);            
            
        }
        
        return clientes;
    }
    //selecionar por cpf
    public Cliente selectporNome(Cliente cliente) throws SQLException//selecionar usuario por cpf
    {
        
        String sql = "SELECT * FROM  cliente WHERE cpf = ?";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setLong(1, cliente.getCpf());//statement seta string 1=? o que vir de cliente.getCpf();
        
        return pesquisa(stmt).get(0);//chama metodo pesquisa que retorna lista de clientes e pegue o primeiro na lista de clientes
        
    }
   
}

VeiculoDAO:
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import model.Veiculo;//importação do veiculo no pacote entidades

public class VeiculoDAO {
    
    private final Connection conexao;
    
    //metodo construtor de conexao
    public VeiculoDAO(Connection conexao)
    {
        
        this.conexao = conexao;
        
    }
    
    //função inserir
    public void inserir(Veiculo veiculo) throws SQLException//passar para a função um cliente do tipo cliente dentro de entidade, caso nao consiga joga uma sqlexception
    {
        
        //jogue na string sql o comando sql os valores respectivos no banco de dados
        String sql = "INSERT INTO veiculo(numero,placa,fabricante,modelo,anomodelo,qtdportas,acessorios) values (?,?,?,?,?,?,?); ";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setString(1,veiculo.getNumero());//statement seta string 1=? o que vir de veiculo.getNumero()
        stmt.setString(2, veiculo.getPlaca());//statement seta string 1=? o que vir de veiculo.getPlaca()
        stmt.setString(3, veiculo.getFabricante());//statement seta string 1=? o que vir de veiculo.getFabricante()
        stmt.setString(4, veiculo.getModelo());//statement seta string 1=? o que vir de veiculo.getModelo()
        stmt.setInt(5, veiculo.getAnomodelo());//statement seta string 1=? o que vir de veiculo.getAnoModelo()
        stmt.setInt(6, veiculo.getQtdportas());//statement seta string 1=? o que vir de veiculo.getQtdportas()
        stmt.setString(7, veiculo.getAcessorios());//statement seta string 1=? o que vir de veiculo.getAcessorios()
        
        //efetua a execução no banco de dados
        stmt.execute();
        
    }
    
    //função deletar
    public void deletar(Veiculo veiculo) throws SQLException
    {
        
        String sql = "DELETE FROM veiculo WHERE placa = ?";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setString(1, veiculo.getPlaca());//statement seta string 1=? o que vir de veiculo.getPlaca()
        stmt.execute();//efetua a execução no banco de dados
        
    }
    
    //função selecionar tudo
    public ArrayList<Veiculo> selecioneTudo() throws SQLException//tras lista de veiculo
    {
        
        String sql = "SELECT * FROM veiculo";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        return pesquisa(stmt);//pesquisa o statement
        
    }
    
    //metodo pesquisa abstraido
    private ArrayList<Veiculo> pesquisa(PreparedStatement stmt) throws SQLException {//cria função pesquisa, recebe o statement e retorna lista de veiculo
        
        ArrayList<Veiculo> veiculos = new ArrayList<Veiculo>();//crie um arraylist de veiculo
        
        stmt.execute();//efetua a execução no banco de dados
        //traga o resultado
        ResultSet resultSet = stmt.getResultSet();
        
        while(resultSet.next())//enquanto estiver lendo linhas
        {
            
            String numero = resultSet.getString("numero");//o que vir de resultset.getString("numero");
            String placa = resultSet.getString("placa");//o que vir de resultset.getString("placa");
            String fabricante = resultSet.getString("fabricante");//o que vir de resultset.getString("fabricante");
            String modelo = resultSet.getString("modelo");//o que vir de resultset.getString("modelo");
            int anomodelo = resultSet.getInt("anomodelo");//o que vir de resultset.getString("anomodelo");
            int qtdporta = resultSet.getInt("qtdporta");//o que vir de resultset.getString("qtdporta");
            String acessorios = resultSet.getString("acessorios");//o que vir de resultset.getString("acessorios");
            
            Veiculo veiculocomBancoDados = new Veiculo(numero, placa, fabricante, modelo, anomodelo, qtdporta, acessorios);
            veiculos.add(veiculocomBancoDados);
        }    
        return veiculos;
    }
    
    //selecionar por placa
    public Veiculo selectporPlaca(Veiculo veiculo) throws SQLException//selecionar usuario por veiculo
    {
        
        String sql = "SELECT * FROM  veiculo WHERE placa = ?";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setString(2, veiculo.getPlaca());//statement seta string 2=? o que vir de cliente.getPlaca();
        
        return pesquisa(stmt).get(2);//chama metodo pesquisa que retorna lista de veiculos e pegue o primeiro na lista de veiculos
        
    }        
}

AluguelDAO.java:
package dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import model.Aluguel;


public class AluguelDAO {
    
    private final Connection conexao;
    
    //metodo construtor de conexao
    
    public AluguelDAO(Connection conexao)
    {
        
        this.conexao = conexao;
        
    }
    
    //função inserir
    public void inserir(Aluguel aluguel) throws SQLException//passar para a função um aluguel do tipo aluguel dentro de entidade, caso nao consiga joga uma sqlexception
    {
        
        //jogue na string sql o comando sql os valores respectivos no banco de dados
        String sql = "INSERT INTO aluguel(idaluguel,veiculo,dataaluguel,dataentrega,cliente,entregue,observacao,valorpago) values (?,?,?,?,?,?,?,?); ";//cria string sql
        PreparedStatement stmt = conexao.prepareStatement(sql);
        
        stmt.setObject(2, aluguel.getVeiculo());//statement seta string 2=? o que vir de aluguel.getVeiculo()
        stmt.setDate(3, aluguel.getDataaluguel());//statement seta string 3=? o que vir de aluguel.getDataaluguel()
        stmt.setDate(4, aluguel.getDataentrega());//statement seta  string 4=? o que vir de aluguel.getDataentrega()
        
    }        
    
}

Aluguel.java:
package model;

import java.util.ArrayList;
import java.sql.Date;

public class Aluguel 
{
    //definição de variaveis
    private int idaluguel;
    private Veiculo veiculo;
    private Date dataaluguel;
    private Date dataentrega;
    private Cliente cliente;
    private String entregue;
    private String observacao;
    private Double valorpago;
    
    //metodo construtor
    public Aluguel(int idaluguel, Veiculo veiculo, Date dataaluguel, Date dataentrega, Cliente cliente, String entregue, String observacao, Double valorpago) {
        this.idaluguel = idaluguel;
        this.veiculo = veiculo;
        this.dataaluguel = dataaluguel;
        this.dataentrega = dataentrega;
        this.cliente = cliente;
        this.entregue = entregue;
        this.observacao = observacao;
        this.valorpago = valorpago;
    }
    
    //metodos gettes e setters
    public int getIdaluguel() {
        return idaluguel;
    }

    public void setIdaluguel(int idaluguel) {
        this.idaluguel = idaluguel;
    }

    public Veiculo getVeiculo() {
        return veiculo;
    }

    public void setVeiculo(Veiculo veiculo) {
        this.veiculo = veiculo;
    }

    public Date getDataaluguel() {
        return dataaluguel;
    }

    public void setDataaluguel(Date dataaluguel) {
        this.dataaluguel = dataaluguel;
    }

    public Date getDataentrega() {
        return dataentrega;
    }

    public void setDataentrega(Date dataentrega) {
        this.dataentrega = dataentrega;
    }

    public Cliente getCliente() {
        return cliente;
    }

    public void setCliente(Cliente cliente) {
        this.cliente = cliente;
    }

    public String getEntregue() {
        return entregue;
    }

    public void setEntregue(String entregue) {
        this.entregue = entregue;
    }

    public String getObservacao() {
        return observacao;
    }

    public void setObservacao(String observacao) {
        this.observacao = observacao;
    }

    public Double getValorpago() {
        return valorpago;
    }

    public void setValorpago(Double valorpago) {
        this.valorpago = valorpago;
    }

}

Github:
https://github.com/YUSEIRENDER/AlocaCar

eu fiz a estrutura errada, o aluguel tem que ser um objeto dentro do objeto vai ter suas colunas, nas colunas respectivas a cliente e veiculo, cliente vai pegar o nome do cliente la na tabela cliente no banco de dados, e veiculo vai pegar o modelo do veiculo la na tabela veiculo no banco de dados e preencher os combobox nas respectivas areas de cliente e veiculo

Se entendi certo, vc quer popular a combobox com os dados do banco. Segue um exemplo básico de como preencher uma:

String[] bookTitles = new String[] {"Effective Java", "Head First Java", "Thinking in Java", "Java for Dummies"};
 
JComboBox<String> bookList = new JComboBox<>(bookTitles);
 
// add to the parent container (e.g. a JFrame):
add(bookList);
 
// get the selected item:
String selectedBook = (String) bookList.getSelectedItem();

Esse é um exemplo simples que usa apenas uma string como valor.

FONTE: https://www.codejava.net/java-se/swing/jcombobox-basic-tutorial-and-examples