Neste Post vou comentar sobre o que é o JARCH Framework MVC. Esse framework foi desenvolvido para diminuir a curva de aprendizado no desenvolvimento de aplicações corporativas utilizando a plataforma JAVAEE.
Resumo
De forma bem resumida o JARCH traz alta produtividade para um desenvolvimento JAVAEE rápido e fácil, utilizando com base suas especificações. Composto por diversos frameworks, componentes e bibliotecas para aplicações corporativas! Possui nativamente internacionalização I18N, auditoria de dados, dados sigilosos e multi-tenant. Diversas bibliotecas para geração de testes de sistema, geração de relatórios, consulta JPQL e muito mais. Encapsulamos o BPMN, utilizando o Camunda como motor e o Modeler para o design. Temos uma ferramenta GCA para geração dos artefatos. Possui também diversos APT's (Annotations Processors) que auxiliam na geração de artefatos e garante a padronização na compilação. Para a camada de visão temos diversos componentes personalizados (Composites Components).
Resumo
De forma bem resumida o JARCH traz alta produtividade para um desenvolvimento JAVAEE rápido e fácil, utilizando com base suas especificações. Composto por diversos frameworks, componentes e bibliotecas para aplicações corporativas! Possui nativamente internacionalização I18N, auditoria de dados, dados sigilosos e multi-tenant. Diversas bibliotecas para geração de testes de sistema, geração de relatórios, consulta JPQL e muito mais. Encapsulamos o BPMN, utilizando o Camunda como motor e o Modeler para o design. Temos uma ferramenta GCA para geração dos artefatos. Possui também diversos APT's (Annotations Processors) que auxiliam na geração de artefatos e garante a padronização na compilação. Para a camada de visão temos diversos componentes personalizados (Composites Components).
A geração dos artefatos no JARCH é através de APT (Annotation Processor Tools), onde basicamente se configura as anotações dentro do package-info.java e no momento da compilação os artefatos são gerados. Essas anotações podem ser criadas em qualquer IDE ou editor, mas existe uma ferramenta chamada CGA (Generate Code Annotation) que facilita a geração dessas anotações. Abaixo segue um exemplo do uso dessas anotações.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | @JArchLogicMasterSubDetail(nameSubPackage = "marca", master = @JArchMaster(name = "Marca", tableName = "tb_marca", fields = { @JArchField(fieldName = "codigo", fieldTable = "cd_marca", description = "Código", type = FieldType.CODIGO, required = true, showDataTable = true, showSearch = true), @JArchField(fieldName = "nome", fieldTable = "nm_marca", description = "Nome", type = FieldType.NOME, required = true, showDataTable = true, showSearch = true, columnSearch = 2, rowDataXhtml = 2) }), details = { @JArchDetailSubDetail(name = "Modelo", tableName = "tb_marca_modelo", fields = { @JArchField(fieldName = "codigo", fieldTable = "cd_modelo", description = "Código", type = FieldType.CODIGO, required = true, showDataTable = true, showSearch = true), @JArchField(fieldName = "nome", fieldTable = "nm_modelo", description = "Nome", type = FieldType.NOME, required = true, showDataTable = true, showSearch = true, columnSearch = 2, rowDataXhtml = 2) }, subDetails = { @JArchSubDetail(name = "SubModelo", tableName = "tb_marca_modelo_submodelo", fields = { @JArchField(fieldName = "codigo", fieldTable = "cd_submodelo", description = "Código", type = FieldType.CODIGO, required = true, showDataTable = true, showSearch = true), @JArchField(fieldName = "nome", fieldTable = "nm_submodelo", description = "Nome", type = FieldType.NOME, required = true, showDataTable = true, showSearch = true, columnSearch = 2, rowDataXhtml = 2) } ) } ) } ) package br.com.arch.arquitetura.crud; import com.arch.annotation.JArchDetail; import com.arch.annotation.JArchDetailSubDetail; import com.arch.annotation.JArchField; import com.arch.annotation.JArchLogicCrud; import com.arch.annotation.JArchLogicMasterDetail; import com.arch.annotation.JArchLogicMasterSubDetail; import com.arch.annotation.JArchMaster; import com.arch.annotation.JArchSubDetail; import com.arch.type.FieldType; |
Essa definição anterior cria um CRUD mestre, detalhe com subdetalhe. Ao compilar o código todos os artefatos são gerados sendo eles:
- Entidades
- Fachada
- Manager
- Observer
- Actions
- Páginas JSF
O framework já possuí nativamente controle de tenant por coluna, auditoria, multilinguas, controle de dados sigilosos, e muito mais. Possuí tambem diversas bibliotecas como por exemplo para consultas de JPA, geração de relatórios, entre outras...
A geração das anotações pode ser facilitada através de uma interface visual (GCA - Generate Code ARCH), essa ferramenta é desktop e foi desenvolvida utilizando JavaFX.
![]() |
GCA |
Conclusão
Para mais informações acesse JARCH Framework MVC.
Até mais...
Download package-info.java
Para utilizar esse framework o que preciso fazer?
ResponderExcluirAdicionar as dependências do MAVEN
Excluir
ResponderExcluirTem alguma contra indicação? é pago?
Gratuito
ExcluirSuporte sobre a ferramenta?
ResponderExcluirEntre em contato via http://www.wesainformatica.com.br
Excluir