Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Doce com DAO + dúvida

Implementei o que foi visto na aula no meu projeto da Doceria

package doceria.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import doceria.Doce;

public class DoceDAO {

    private Connection conexao;

    public DoceDAO(Connection conexao) {
        this.conexao = conexao;
    }

    public void salvar(Doce doce) throws SQLException {
        String sql = "INSERT INTO DOCE (NOME, INGREDIENTES) VALUES (?, ?)";

        try (PreparedStatement ps = conexao.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS)) {
            ps.setString(1, doce.getNome());
            ps.setString(2, doce.getIngredientes());

            ps.execute();

            try (ResultSet rs = ps.getGeneratedKeys()){
                while (rs.next()) {
                    doce.setId(rs.getInt(1));
                }
            }
        }
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade O DAO serve para manipularmos o banco de dados em uma classe só?

1 resposta
solução!

DAO é um acrônimo para Data Access Object, onde separamos toda a parte de manipulação do banco em uma classe específica para isso. Dessa forma, vc tem uma separação de responsabilidade, facilitando a manutenção do código.