-2
I’m developing an app that’s a gun store.
I own the class Produto
with the subclasses Arma
, Faca
and Municao
. In this project I am applying the DAO standard, but I don’t understand very well how its application works in subclasses.
I own the class ProdutoDAO
:
public class ProdutoDAO implements GenericDAO<Produto> {
Connection connection = null;
@Override
public void save(Produto produto) throws SQLException {
try {
connection = new ConnectionFactory().getConnection();
String sql = "INSERT INTO PRODUTO(ID, ID_MARCA, DESCRICAO,"
+ "PESO) VALUES (?, ?, ?, ?);" ;
PreparedStatement pstm = connection.prepareStatement(sql);
pstm.setInt(1, produto.getId());
pstm.setString(2, produto.getDescricao());
pstm.setDouble(3, produto.getPeso());
pstm.execute();
} catch (SQLException sqle) {
JOptionPane.showMessageDialog(null, "Erro ao inserir o produto no "
+ "banco de dados." + sqle.getMessage());
sqle.printStackTrace();
} catch (Exception ex) {
JOptionPane.showMessageDialog(null,
"Ocorreu um erro. Contate o suporte.\n" + ex.getMessage());
ex.printStackTrace();
} finally {
connection.close();
}
}
}
My question is about class ArmaDAO
. How should I implement it?
She must extend the class ProdutoDAO
? The class ProdutoDAO
must be abstract?