terça-feira, 25 de setembro de 2018

Migração de dados

Introdução

Nesse post veremos como migrar dados de um banco de dados para outro via aplicação.

Migração

No Jarch já é nativo a página e a lógica para efetuar essa migração, basta adicionar no menu conforme abaixo:
1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
@JArchViewScoped
public class MenuAction extends BaseMenuAction {

    @Override
    public List<IMenu> createMenu() {
        List<IMenu> menu = new ArrayList<>();

        menu.add(MenuBuilder
                .newInstance()
                .name("Migração")
                .action("../migration/migration.jsf")
                .build());

        return menu;
    }
}

Irá aparece a tela abaixo:

Todas as entidades que implementarem a interface ICrudEntity serão filtradas para mostrar na caixa de seleção, e estarão disponíveis para a migração, com exceção das classes que estiverem com a anotação @ArchIgnoreMigrate.

Conforme um item é selecionado, é feito uma busca no banco de dados para possível filtro, caso nenhum registro seja selecionado todos os dados da tabela serão migrados:


Para uma melhor visualização dos dados será necessário sobre escrever o método toString() conforme abaixo:
1
2
3
4
5
 @Override
 public String toString() {
  return BundleUtils.messageBundle("label.codigo") + ": " + codigo +
    BundleUtils.messageBundle("label.descricao") + ": " + descricao;
 }

Conforme é escolhido a(s) entidade(s) a ser migrada é gerado um arquivo "migracao.zip" contendo os objetos serializados separados por pastas:

Restauração

Na mesma página existe outra aba logo acima para fazer a restauração dos dados que anteriormente foram filtrados, conforme os passos acima.

Na aba de restauração é semelhante a aba de migração onde as entidades disponíveis serão filtradas e estarão disponíveis para a restauração, e o arquivo para fazer o upload.



Conclusão

Nesse post vimos como deixar disponível a página de migração no menu, como configurar as entidades para filtro e as que não devem estar disponíveis, como deixar os dados mais apresentáveis e como restaurar os dados.

Até mais,

Nenhum comentário:

Postar um comentário

Versão 23.3.0-Final

      Introdução Nesse post vou mostrar as principais novidades da versão 23.3.0, algumas correções e pequenas alterações. Alterações Além d...