O padrão Repository é muito utilizado em abordagens que fazem uso de ferramentas de mapeamento objeto relacional (ORM). O objetivo deste pattern é reunir comandos de acesso a dados em uma classe que por meio dos recursos de generics faça as operações de inserção, atualização, exclusão e recuperação de dados.