O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Demoiselle 3 Está chegando a hora

106 visualizações

Publicada em

http://assiste.serpro.gov.br/supsd/video.php?nome=212037

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Demoiselle 3 Está chegando a hora

  1. 1. Framework DemoDemoiselleiselle Está chegandoEstá chegando a hora!a hora!
  2. 2. EntregasEntregas BETA-1BETA-1 BETA-2BETA-2 BETA-3BETA-3 3.0.03.0.0 SETEMBROSETEMBRO OUTUBROOUTUBRO NOVEMBRONOVEMBRO DEZEMBRODEZEMBRO JEE7 Front-end JANEIRO/JANEIRO/20172017 RC-1RC-1
  3. 3. EntregasEntregas
  4. 4. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  5. 5. ModularizaçãoModularização https://github.com/demoiselle/framework/tree/3.0.0-SNAPSHOThttps://github.com/demoiselle/framework/tree/3.0.0-SNAPSHOT JEE7 / JAVA 8 Multitenancy RESTfull API Microcontainer Scripts Dinâmicos RESTfull API
  6. 6. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  7. 7. MudançasMudanças demoiselle.org jboss.org apache.org libreoffice.org gimp.org ubuntulinux.org firefox.org
  8. 8. MudançasMudançasOrientado à ProjetoOrientado à Projeto import org.demoiselle.jee.core.exception; import org.demoiselle.signer.certificate.exception; Organização Demoiselle Projeto Framework JEE Organização Demoiselle Projeto Signer (Assinador) import br.gov.frameworkdemoiselle.DemoiselleException; import br.gov.frameworkdemoiselle.certificate; Organização Demoiselle Componente VersãoVersão 22 VersãoVersão 33
  9. 9. MudançasMudançasTransaçãoTransação import javax.ejb.Stateless; import javax.transaction.Transactional; @Stateless @TransactionManagement(value = TransactionManagementType.CONTAINER) public class UserBC extends AbstractBusiness<User, Long> { @Inject private UserDAO dao; @Transactional public User persist(User entity) { return dao.persist(entity); } } Uso da especificação JSR 907 Java Transaction API (JTA) Gerenciada pelo usuário ou pelo container
  10. 10. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  11. 11. Microserviço e JEE7Microserviço e JEE7 Aplicações Monolíticas Microserviços SOA de maior granularidade
  12. 12. Microserviço e JEE7Microserviço e JEE7 mvn package mvn package ­Pwildfly­swarm
  13. 13. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  14. 14. Multitenancy x Scritps DinâmicosMultitenancy x Scritps Dinâmicos https://demoiselle.gitbooks.io/documentacao-jee/content/multitenancy.html ISOLAR X COMPARTILHARISOLAR X COMPARTILHAR
  15. 15. As linguagens de script são capazes de criar objetos Java e chamar métodos públicos dos objetos usando a sintaxe das linguagens de script. Multitenancy x Scritps DinâmicosMultitenancy x Scritps Dinâmicos @Inject private MultiTenantContext multiTenantContext; @Inject private DynamicManager scriptManager; public User insert(User user) { String script = confTenant.get("createUserScript").toString(); Tenant tenant = multiTenantContext.getTenant(); SimpleBindings vars = new SimpleBindings(); vars.put("usuario", user); String scriptId = "createUser-" + tenant.getName(); scriptManager.loadEngine("groovy"); scriptManager.loadScript(scriptId, script); scriptManager.eval(scriptId, vars); return dao.insert(user); } Uso da especificação JSR 223 Scripting for the Java Obtendo o Tenancy Executando um script Em groovy usuario.setStatus(3)
  16. 16. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  17. 17. RESTful API DesignRESTful API Design Um forma simples de encaminhar informações de modo confiável, pois são assinadas e confirmadas. demoiselle-security-
  18. 18. RESTful API DesignRESTful API Design Qual liquidificador é mais simples?
  19. 19. RESTful API DesignRESTful API Design Como as GigantesGigantes da Webda Web Fazem ?
  20. 20. RESTful API DesignRESTful API Design RESTfull API Design
  21. 21. Projeto Demoiselle Front-end
  22. 22. Demoiselle Front-end
  23. 23. Demoiselle Front-end ● Framework Web ● HTML ● CSS 3
  24. 24. Demoiselle Front-end ● Gerenciador de Dependências ● Mais de 35 mil pacotes
  25. 25. Demoiselle Front-end ● Melhorias DI ● Desempenho ● Modular ● Reuso ● Carregamento automático ● Mobile support ● Typescript/ES6 ● Classes ● Tipagem ● Arrow functions
  26. 26. Demoiselle Front-end ● Empacotador de Código ● Gestão de dependências entre módulos ● Empacotamento ● Plugins/Loaders ● Code splitting (modularização)
  27. 27. Demoiselle Front-end Módulo HTTP ● Tratamento de endpoints ● Tratamento de erros/interceptador ● Tratamento de multitenancy Módulo Security ● Token JWT / Retoken ● Login ● Tratamento de permissões ● Diretivas de segurança Serviços de Notificação ● Alertas ● Mensagem de confirmação Serviços de Validação ● Validação de formulários ● Validação no servidor CRUD ● Gerador ● Componentes facilitadores
  28. 28. JEE7 Linguagens de Script Multitenancy Microcontainers ROADMAPROADMAP
  29. 29. https://github.com/demoiselle/example-store
  30. 30. EntregasEntregas BETA-1BETA-1 BETA-2BETA-2 BETA-3BETA-3 3.0.03.0.0 SETEMBROSETEMBRO OUTUBROOUTUBRO NOVEMBRONOVEMBRO DEZEMBRODEZEMBRO JEE7 Front-end JANEIRO/JANEIRO/20172017 RC-1RC-1

×