Olá pessoal,
Sou novo em java e estou com a seguinte dúvida:
Tenho uma classe Banco que faz a conexão com o banco de dados, e uma classe Agenda onde será feito a gravação/alteração/exclusão dos dados. A questão é, eu devo herdar a classe banco na classe Agenda, ou devo instanciar a classe Banco na classe Agenda?
Desde já agradeço!
Herança implicaria no seguinte
Agenda É UM Banco
Faz sentido?
Agora se Agenda fizer uso de um Banco (usando internamente), ela TEM UM Banco, que faz mais sentido nesse caso.
Po cara você pode herdar como pode tbm implementar no seu caso seria melhor implementar pq herdar não tem o menor sentido seria legal você pegar alguma apostila de OO para java.
sua duvida tem haver com Orientação a objeto.
Espero ter ajudar.
Pelo que eu entendi você tem uma classe agenda que irá fazer o acesso ao BD neste caso instancie a classe Connection que deve ser o return do método criado dentro da classe BD.
Connection con = ClasseBD.getConnection();
Obrigado pela ajuda!
Surgiu mais uma dúvida. Primeiro vou mostrar como está à estrutura do sistema:
- Tenho a classe Banco com um método getConectaBanco que retorna um Connection,e tb tenho um método setDesconectaBanco.
- Tenho uma classe Agenda que retorna um ResultSet. Essa será responsável por tudo o que for feito na agenda (Inset, Delete,Update,Request). No momento ele só faz uma simples consulta retornando todos os registros da tabela agenda.
- E tenho um arquivo agenda.jsp, esse pega o ResultSet recebido e com um while lista todos os registros.
Minhas dúvidas são:
Esse procedimento que eu fiz está correto?
Como eu faço para desconectar o banco de dados quando estiver no arquivo agenda.jsp? pois no nesse jsp eu instanciei somente a classe Agenda, devo instar a classe Banco também?
Desde já agradeço!
Quando você cria um objeto em memória, este objeto, é na verdade uma instância (representação) da classe utilizada para a construção deste objeto.
A herança entre classes possibilita que subclasses (classes filhas) herdem as características de sua super classe (classe pai). Uma observação importante, é que tanto atributos como métodos definidos como [color=red]PRIVATE[/color] não são herdados.
Bom cara é o seguinte se você preenche um BEAN com o ResultSet, no próprio metodo que Instancio a classe você getConectaBanco você coloca no Finally um con.close(), pois o resultado da query já estão dentro do obejto agenda.