Changes between Version 2 and Version 3 of WF/criarcamadadepersistencia
- Timestamp:
- 08/03/10 14:24:18 (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WF/criarcamadadepersistencia
v2 v3 1 = Criar Camada de Persistência = 2 1 3 == 1 Descrição == 2 A camada de persistência de dados é parte do modelo de negócios, e é a única forma de acessar dados do banco de dados. As classes da camada são representações dos repositórios do banco de dados e implementam minimamente métodos para seleção, inserção, atualização, e remoção de tuplas nas tabelas do banco de dados. Cada repositório deve ser representado por uma classe contendo mapeamento de cada campo do repositório na forma de atributo protegido e métodos públicos para obter e definir este atributo. Estas classes devem ser armazenadas na pasta vo da estrutura de pastas. As rotinas de manipulação de dados no SGBD são executadas por classes que herdam a classe vo correspondente ou seja cada classe de manipulação de dados estende de uma classe de definição dos campos. A classes de manipulação de dados implementam a classe que define os métodos de manipulação de dados.3 4 4 A execução do metodo selectData deve retornar sempre um array de objetos do tipo bo, o método insertData deve retornar o identificador da tupla do ultimo registro inserido, 5 os metodos updateData e deleteData retonam o número de registros afetados pela execução do código. 5 A camada de persistência de dados é parte do modelo de negócios, e é a única forma de acessar dados do banco de dados. As classes da camada são representações dos repositórios do banco de dados e implementam minimamente métodos para seleção, inserção, atualização, e remoção de tuplas nas tabelas do banco de dados. Cada repositório deve ser representado por uma classe contendo mapeamento de cada campo do repositório na forma de atributo protegido e métodos públicos para obter e definir este atributo. Estas classes devem ser armazenadas na pasta vo da estrutura de pastas. As rotinas de manipulação de dados no SGBD são executadas por classes que herdam a classe vo correspondente ou seja cada classe de manipulação de dados extende de uma classe de definição dos campos. A classes de manipulação de dados implementam a classe que define os métodos de manipulação de dados. 6 6 7 O acesso ao banco de dados é feito utilizando um objeto de conexão implementado conforme o padrão singeton, e os parâmetros para a conexão com o banco de dados devem ser mantidos na pasta config contendo pelo menos as constantes DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWD. 7 A execução do método selectData deve retornar sempre um array de objetos do tipo vo, o método insertData deve retornar o identificador da tupla do último registro inserido, 8 os métodos updateData e deleteData retonam o número de registros afetados pela execução do código. 8 9 9 class sample.bo 10 O acesso ao banco de dados é feito utilizando um objeto de conexão implementado conforme o padrão singleton, e os parâmetros para a conexão com o banco de dados devem ser mantidos na pasta config contendo pelo menos as constantes DB_HOST, DB_PORT, DB_NAME, DB_USER, DB_PASSWD. 11 12 class sample.vo 10 13 protected sample_value; 14 11 15 public getSampleValue() 12 16 return sample_value; 17 13 18 public setSampleValue(data) 14 19 return void; 15 20 16 class sample.dao extends !Sample BO implements !DaoInterface21 class sample.dao extends !SampleVO implements !DaoInterface 17 22 public selectData(where, order, limit) 18 return array sample. bo;23 return array sample.vo; 19 24 public insertData(where) 20 25 return int new id; … … 30 35 Os objetos de persistência devem ser gerados automaticamente por engenharia reversa com acesso direto ao banco de dados ou pela leitura de arquivo de instalação contendo uma representação da estrutura do banco de dados a ser criado. Baseado neste arquivo a aplicação conecta-se ao bd e executa a criação ou alteração necessária e gera todos os arquivos de persistência necessários para a representação dos dados. 31 36 37 == 2 Atores == 32 38 33 == 2 Atores == 34 * 1. Desenvolvedores do sistema 39 1. Desenvolvedores do sistema 40 35 41 == 3 Pré-condições == 36 42 37 *1. Ter realizado o UC Criar Estrutura de Pastas38 *2. Ter acesso ao servidor de banco de dados43 1. Ter realizado o UC Criar Estrutura de Pastas 44 2. Ter acesso ao servidor de banco de dados 39 45 40 46 == 4 Eventos == 41 47 42 *1. Desenvolvedor cria modelo de dados da aplicação.43 *2. Desenvolvedor configura acesso ao SGBD.44 *3. Desenvolvedor configura arquivo de descrição do banco de dados {A1}45 *4. Desenvolvedor executa aplicação que realiza criação dos arquivos de persistência.46 *5. Sistema verifica se já existe arquivo com o mesmo nome, caso existe solicita intervenção do usuário com as opções sobrescrever ou manter o arquivo. {E1}48 1. Desenvolvedor cria modelo de dados da aplicação. 49 2. Desenvolvedor configura acesso ao SGBD. 50 3. Desenvolvedor configura arquivo de descrição do banco de dados {A1} 51 4. Desenvolvedor executa aplicação que realiza criação dos arquivos de persistência. 52 5. Sistema verifica se já existe arquivo com o mesmo nome, caso existe solicita intervenção do usuário com as opções sobrescrever ou manter o arquivo. {E1} 47 53 48 54 == 5 Eventos Alternativos == 49 55 50 * A1Não gera arquivo de configuração e cria classes a partir de engenharia reversa.56 {A1} Não gera arquivo de configuração e cria classes a partir de engenharia reversa. 51 57 52 58 == 6 Tratamento de Erros == 53 59 54 *No caso de não ser possivel escrever em disco apresentar a mensage {M1}, se o usuário optar pela opção cancelar encerra o fluxo, tentar novamente executa novamente a instrução e ignorar executa a próxima linha de código.60 {E1} No caso de não ser possivel escrever em disco apresentar a mensage {M1}, se o usuário optar pela opção cancelar encerra o fluxo, tentar novamente executa novamente a instrução e ignorar executa a próxima linha de código. 55 61 56 62 == 7 Mensagem == 57 63 58 * M1Problemas na criação do arquivo, deseja Tentar Novamente | Ignorar | Cancelar64 {M1} Problemas na criação do arquivo, deseja Tentar Novamente | Ignorar | Cancelar 59 65 60 66 == 8 Pós-condições == 61 67 62 *Arquivos de persistência criados.63 *Configurações de acesso ao banco de dados criada.64 *Banco de dados criado.68 Arquivos de persistência criados. 69 Configurações de acesso ao banco de dados criada. 70 Banco de dados criado. 65 71 66 72 == 9 Regras de Negócio == … … 73 79 74 80 == 11 Notas == 75