Problema de Desenho da aplicacao

1 resposta
campossalex

Eae galera. Bom, estou fazendo um pequeno programa para começar a programar em Java.
O sistema eh simples e vou explicar a parte onde tenho o problema.
Tenho duas classes: uma banco e uma conta.

=============================
========= bank.java =============

[color=blue]package util;

/**

  • This class holds the details of bank entity
    */
    public class Bank {

    private String bankId;
    private String name;

    public Bank() {
    }

    public Bank( String bankId, String name ) {
    
    this.bankId = bankId;
    
    <a href="http://this.name">this.name</a> = name;
    
    }
    
    public String getBankId() {
    
    return bankId;
    
    }
    
    public void setBankId(String bankId) {
    
    this.bankId = bankId;
    
    }
    
    public String getName() {
    
    return name;
    
    }
    
    public void setName(String name) {
    
    <a href="http://this.name">this.name</a> = name;
    
    }
    

}[/color]

=============================
========= account.java ===========

[color=blue]package util;

/**

  • This class holds the details of account entity
    */
    public class Account {

    private String accountId;
    
    private String bankId;
    
    private String number;
    

    public Account () {
    }

    public Account (String accountId, String bankId, String number) {
    
    this.setAccountId(accountId);
    
    this.setBankId(bankId);
    
    this.setNumber(number);
    
    }
    
    public String getAccountId() {
    
    return accountId;
    
    }
    
    public void setAccountId(String accountId) {
    
    this.accountId = accountId;
    
    }
    
    public String getBankId() {
    
    return bankId;
    
    }
    
    public void setBankId(String bankId) {
    
    this.bankId = bankId;
    
    }
    
    public String getNumber() {
    
    return number;
    
    }
    
    public void setNumber(String number) {
    
    this.number = number;
    
    }
    

}[/color]

Utilizo dois patterns para fazer o listado dos bancos e das contas:
DAO e Front Controller.
O Front Controller faz um dispatcher para o .jsp.
No DAO faço as consultas que correspondem fazer para cada tipo de classe e devolvo o mesmo tipo de objeto.
Exemplo:

========================
=== retorna todos os bancos =====

[color=blue]    public List getBanks() {

List list = new ArrayList();

try {

PreparedStatement stat = connection.prepareStatement(GET_BANKS);

ResultSet rs           = stat.executeQuery();
while(rs.next()){
            list.add(new Bank(rs.getString("bank_id"),
                    rs.getString("bank_name")));
        }
    } catch (SQLException ex) {
        ex.printStackTrace();
    } finally {
        return list;
    }
}[/color]

Agora vem o problema, porque quero fazer um listado das contas assim:
Numero da Conta | Nome do Banco
55454-5 Bando do Brasil
5644-9 Itau
64944894-8 Caixa Economica

soh que a minha clase account naum tem o atributo bankName.
Que deveria fazer: uma terceira clase que se accountList y que tenha uma mistura das clases bank e account?
Ou existe um design pattern que me soluciona isso?

Obrigado pelas respostas!!!

1 Resposta

campossalex

agregation soluciona o problema, pois um banco tem conta.
Entao a solucao eh, quando eu quero um objeto conta completa (com nome do banco), instancio banco e levo para dentro de esta instancia uma instancia do objeto conta.

Criado 11 de setembro de 2007
Ultima resposta 11 de set. de 2007
Respostas 1
Participantes 1