SlideShare uma empresa Scribd logo
1 de 26
MVC framework
Sumário
➢ O que é?
➢ Quais as vantagens em utilizá-lo?
➢ Como obter o Brutos Framework?
➢ Como configurá-lo?
➢ Opções de configuração
➢ Principais anotações
O que é?
O Brutos application framework é um controlador MVC desenvolvido em Java.
Projetado para reduzir a complexidade do desenvolvimento web com
mapeamento configurável, resolução de vista, suporte ao upload e download de
arquivos. Pode ser configurado usando XML, anotações e suas convenções de
configuração.
Quais as vantagens em utilizá-lo?
➢ leve;
➢ baixo acoplamento;
➢ produtivo;
➢ geração de componentes testáveis;
➢ suporte avançado de mapeamento;
➢ fácil aprendizado.
Como obter o Brutos Framework?
Obtendo o pacote
Os pacotes de liberação estão hospedados no sistema de arquivos da
SourceForge em formato ZIP.
Cada pacote contém jars, exemplos, código fonte e entre outros. Seu download
pode ser feito a partir da url http://sourceforge.net/projects/brutos/files/brutos/.
Repositório de artefatos Maven
➢ brutos-core: artefato principal, necessário para construir aplicações usando o
Brutos APIs nativo.
➢ brutos-annotation: artefato opcional que permite a construção de aplicações
usando anotações. Este artefato depende do brutos-core.
➢ brutos-web: artefato opcional que permite a construção de aplicações web.
Este artefato depende do brutos-core.
O repositório oficial do Brutos Framework é
http://www.brutosframework.com.br/maven/2.
Como configurá-lo?
Registrar o listener no web.xml
Atenção: Se estiver sendo usado um container que suporte a especificação
Servlet 3.0, o registro do ContextLoadListener não será necessário. Ele é
automaticamente registrado.
Registrar o filtro no web.xml
Atenção: Se estiver sendo usado um container que suporte a especificação
Servlet 3.0, o registro do BrutosRequestFilter não será necessário. Ele é
automaticamente registrado.
Opções de configuração
Opções de configuração
➢ Anotações
➢ XML
➢ CoC (Convenção sobre configuração)
Principais anotações
Principais anotações
➢ @Controller: indica um controlador;
➢ @Action: indica uma ação;
➢ @RequestMethod: associa uma ação a um determinado método HTTP;
➢ @ResponseStatus: define o status HTTP da resposta de uma ação;
➢ @ResponseError: define o status HTTP da resposta quando é lançada uma
exceção;
➢ @AcceptRequestType: indica os formatos de requisição suportados por uma
ação;
➢ @ResponseType: indica os formatos de resposta suportados por uma ação;
➢ @Any: especifica o mapeamento de polimorfismo;
➢ @View: define a vista de uma ação;
➢ @Basic: especifica o mapeamento básico de um bean;
➢ @Intercepts: especifica um interceptor.
@Controller
@Action
@RequestMethod
@ResponseStatus
@ResponseError
@AcceptRequestType
@ResponseType
@Any
@View
@Basic
@Intercepts
Referências
➢ http://www.brutosframework.com.br/
➢ https://www.amazon.com.br/Brutos-Framework-Um-framework-MVC-
ebook/dp/B00VD3JDOM
➢ https://en.wikipedia.org/wiki/Brutos_Framework

Mais conteúdo relacionado

Mais procurados

Sqlite - Introdução
Sqlite - IntroduçãoSqlite - Introdução
Sqlite - IntroduçãoJoao Johanes
 
Otimização front end
Otimização front endOtimização front end
Otimização front endErika Takahara
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6danielfcampos
 
Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0jesuinoPower
 
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHP
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHPWeb Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHP
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHPFernando de Assis Rodrigues
 
OWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookOWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookGiovane Liberato
 
Staging liferay portal 6.2
Staging liferay portal 6.2Staging liferay portal 6.2
Staging liferay portal 6.2Paulo Fernandes
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010Eder Magalhães
 
O framework spring
O framework springO framework spring
O framework springBruno Catão
 
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do GojavaJSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do GojavaFrederico Maia Arantes
 
Primeira Aula do Curso de Hardening
Primeira Aula do Curso de HardeningPrimeira Aula do Curso de Hardening
Primeira Aula do Curso de HardeningDell Technologies
 
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...Thoughtworks
 
Websocket
WebsocketWebsocket
Websocketmaxii
 
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...As Zone
 

Mais procurados (20)

Sqlite - Introdução
Sqlite - IntroduçãoSqlite - Introdução
Sqlite - Introdução
 
Framework web 02 - 2016
Framework web 02 - 2016Framework web 02 - 2016
Framework web 02 - 2016
 
Frameworks em Java
Frameworks em JavaFrameworks em Java
Frameworks em Java
 
Zabbix 3 0-cinfotec
Zabbix 3 0-cinfotecZabbix 3 0-cinfotec
Zabbix 3 0-cinfotec
 
Otimização front end
Otimização front endOtimização front end
Otimização front end
 
Jaas apresentado
Jaas apresentadoJaas apresentado
Jaas apresentado
 
Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6Uma abordagem ao Java EE 6
Uma abordagem ao Java EE 6
 
Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0Novidades do JAX-RS 2.0
Novidades do JAX-RS 2.0
 
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHP
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHPWeb Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHP
Web Storage: Software Web 2.0 controlador de versão utilizando ExtJS e PHP
 
OWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbookOWASP Top 10 - A web security cookbook
OWASP Top 10 - A web security cookbook
 
Staging liferay portal 6.2
Staging liferay portal 6.2Staging liferay portal 6.2
Staging liferay portal 6.2
 
JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010JSF2 ScrumToys SestInfo 2010
JSF2 ScrumToys SestInfo 2010
 
O framework spring
O framework springO framework spring
O framework spring
 
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do GojavaJSF 2 e Primefaces - 4º Encontro Mensal do Gojava
JSF 2 e Primefaces - 4º Encontro Mensal do Gojava
 
Primeira Aula do Curso de Hardening
Primeira Aula do Curso de HardeningPrimeira Aula do Curso de Hardening
Primeira Aula do Curso de Hardening
 
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
Workshop Ruby on Rails - Code Girl (Programar meu Futuro), por Gislene Pereir...
 
Webcast portlets-jsf
Webcast portlets-jsfWebcast portlets-jsf
Webcast portlets-jsf
 
Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2Aula parte 2 de JSF 2.2
Aula parte 2 de JSF 2.2
 
Websocket
WebsocketWebsocket
Websocket
 
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...
Fisl 16 - WordPress vs Hacker - Descubra o que ainda é preciso saber para bl...
 

Semelhante a MVC Framework Guide

Testes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosTestes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosDiego Santos
 
The twelve factor apps and openruko
The twelve factor apps and openrukoThe twelve factor apps and openruko
The twelve factor apps and openrukoÉverton Ribeiro
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
Html5 pt - Offline Apps
Html5 pt - Offline AppsHtml5 pt - Offline Apps
Html5 pt - Offline AppsByclosure
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev IntroduçãoMarcio Marinho
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPauloRobertoBolsanel
 
PostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPedro Fernandes Vieira
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Jeronimo Zucco
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Jeronimo Zucco
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
People soft on rac sig.en.pt
People soft on rac sig.en.ptPeople soft on rac sig.en.pt
People soft on rac sig.en.ptsaulfreitas
 
Robot Framework - principais características
Robot Framework - principais característicasRobot Framework - principais características
Robot Framework - principais característicasalinebiath
 
Atividade sistema operacionais
Atividade sistema operacionaisAtividade sistema operacionais
Atividade sistema operacionaisCarlos Melo
 
Entendendo Frameworks web com Python
Entendendo Frameworks web com PythonEntendendo Frameworks web com Python
Entendendo Frameworks web com PythonLuiz Aldabalde
 

Semelhante a MVC Framework Guide (20)

Testes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizadosTestes em aplicações JEE: Montando sua infra de testes automatizados
Testes em aplicações JEE: Montando sua infra de testes automatizados
 
PHP FrameWARks - CakePHP
PHP FrameWARks - CakePHPPHP FrameWARks - CakePHP
PHP FrameWARks - CakePHP
 
VIII TechTalk - Spring 3
VIII TechTalk - Spring 3VIII TechTalk - Spring 3
VIII TechTalk - Spring 3
 
The twelve factor apps and openruko
The twelve factor apps and openrukoThe twelve factor apps and openruko
The twelve factor apps and openruko
 
Tutorial struts
Tutorial strutsTutorial struts
Tutorial struts
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
Web Services
Web ServicesWeb Services
Web Services
 
Maverick v1.0
Maverick v1.0Maverick v1.0
Maverick v1.0
 
Html5 pt - Offline Apps
Html5 pt - Offline AppsHtml5 pt - Offline Apps
Html5 pt - Offline Apps
 
Java Web Dev Introdução
Java Web Dev IntroduçãoJava Web Dev Introdução
Java Web Dev Introdução
 
Phalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações IniciaisPhalcon FrameWork - Considerações Iniciais
Phalcon FrameWork - Considerações Iniciais
 
PostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro VieiraPostgreSQL - Visão Geral - Pedro Vieira
PostgreSQL - Visão Geral - Pedro Vieira
 
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
Tchelinux live 2020 - Detectando e Respondendo Incidentes de Segurança em Fro...
 
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
Detectando e Respondendo Incidentes de Segurança em Frontends Nginx utilizand...
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
People soft on rac sig.en.pt
People soft on rac sig.en.ptPeople soft on rac sig.en.pt
People soft on rac sig.en.pt
 
Contextos
ContextosContextos
Contextos
 
Robot Framework - principais características
Robot Framework - principais característicasRobot Framework - principais características
Robot Framework - principais características
 
Atividade sistema operacionais
Atividade sistema operacionaisAtividade sistema operacionais
Atividade sistema operacionais
 
Entendendo Frameworks web com Python
Entendendo Frameworks web com PythonEntendendo Frameworks web com Python
Entendendo Frameworks web com Python
 

Mais de Afonso Brandão

Sistema de transações do Entity File Manager.
Sistema de transações do Entity File Manager.Sistema de transações do Entity File Manager.
Sistema de transações do Entity File Manager.Afonso Brandão
 
Mapping a Complex collection (brutos mvc)
Mapping a Complex collection (brutos mvc)Mapping a Complex collection (brutos mvc)
Mapping a Complex collection (brutos mvc)Afonso Brandão
 
Setting response status code (brutos mvc)
Setting response status code (brutos mvc)Setting response status code (brutos mvc)
Setting response status code (brutos mvc)Afonso Brandão
 
Exception handler (brutos mvc)
Exception handler (brutos mvc)Exception handler (brutos mvc)
Exception handler (brutos mvc)Afonso Brandão
 
Enum mapping (Brutos mvc)
Enum mapping (Brutos mvc)Enum mapping (Brutos mvc)
Enum mapping (Brutos mvc)Afonso Brandão
 
File upload (brutos mvc)
File upload (brutos mvc)File upload (brutos mvc)
File upload (brutos mvc)Afonso Brandão
 
Brutos mvc + jta + cdi + hibernate
Brutos mvc + jta + cdi + hibernateBrutos mvc + jta + cdi + hibernate
Brutos mvc + jta + cdi + hibernateAfonso Brandão
 

Mais de Afonso Brandão (10)

Ediacaran Application
Ediacaran ApplicationEdiacaran Application
Ediacaran Application
 
Calypte Cache
Calypte CacheCalypte Cache
Calypte Cache
 
Sistema de transações do Entity File Manager.
Sistema de transações do Entity File Manager.Sistema de transações do Entity File Manager.
Sistema de transações do Entity File Manager.
 
Mapping a Complex collection (brutos mvc)
Mapping a Complex collection (brutos mvc)Mapping a Complex collection (brutos mvc)
Mapping a Complex collection (brutos mvc)
 
Setting response status code (brutos mvc)
Setting response status code (brutos mvc)Setting response status code (brutos mvc)
Setting response status code (brutos mvc)
 
Exception handler (brutos mvc)
Exception handler (brutos mvc)Exception handler (brutos mvc)
Exception handler (brutos mvc)
 
Enum mapping (Brutos mvc)
Enum mapping (Brutos mvc)Enum mapping (Brutos mvc)
Enum mapping (Brutos mvc)
 
File upload (brutos mvc)
File upload (brutos mvc)File upload (brutos mvc)
File upload (brutos mvc)
 
Brutos mvc + hibernate
Brutos mvc + hibernateBrutos mvc + hibernate
Brutos mvc + hibernate
 
Brutos mvc + jta + cdi + hibernate
Brutos mvc + jta + cdi + hibernateBrutos mvc + jta + cdi + hibernate
Brutos mvc + jta + cdi + hibernate
 

MVC Framework Guide

  • 2. Sumário ➢ O que é? ➢ Quais as vantagens em utilizá-lo? ➢ Como obter o Brutos Framework? ➢ Como configurá-lo? ➢ Opções de configuração ➢ Principais anotações
  • 3. O que é? O Brutos application framework é um controlador MVC desenvolvido em Java. Projetado para reduzir a complexidade do desenvolvimento web com mapeamento configurável, resolução de vista, suporte ao upload e download de arquivos. Pode ser configurado usando XML, anotações e suas convenções de configuração.
  • 4. Quais as vantagens em utilizá-lo? ➢ leve; ➢ baixo acoplamento; ➢ produtivo; ➢ geração de componentes testáveis; ➢ suporte avançado de mapeamento; ➢ fácil aprendizado.
  • 5. Como obter o Brutos Framework?
  • 6. Obtendo o pacote Os pacotes de liberação estão hospedados no sistema de arquivos da SourceForge em formato ZIP. Cada pacote contém jars, exemplos, código fonte e entre outros. Seu download pode ser feito a partir da url http://sourceforge.net/projects/brutos/files/brutos/.
  • 7. Repositório de artefatos Maven ➢ brutos-core: artefato principal, necessário para construir aplicações usando o Brutos APIs nativo. ➢ brutos-annotation: artefato opcional que permite a construção de aplicações usando anotações. Este artefato depende do brutos-core. ➢ brutos-web: artefato opcional que permite a construção de aplicações web. Este artefato depende do brutos-core. O repositório oficial do Brutos Framework é http://www.brutosframework.com.br/maven/2.
  • 9. Registrar o listener no web.xml Atenção: Se estiver sendo usado um container que suporte a especificação Servlet 3.0, o registro do ContextLoadListener não será necessário. Ele é automaticamente registrado.
  • 10. Registrar o filtro no web.xml Atenção: Se estiver sendo usado um container que suporte a especificação Servlet 3.0, o registro do BrutosRequestFilter não será necessário. Ele é automaticamente registrado.
  • 12. Opções de configuração ➢ Anotações ➢ XML ➢ CoC (Convenção sobre configuração)
  • 14. Principais anotações ➢ @Controller: indica um controlador; ➢ @Action: indica uma ação; ➢ @RequestMethod: associa uma ação a um determinado método HTTP; ➢ @ResponseStatus: define o status HTTP da resposta de uma ação; ➢ @ResponseError: define o status HTTP da resposta quando é lançada uma exceção; ➢ @AcceptRequestType: indica os formatos de requisição suportados por uma ação; ➢ @ResponseType: indica os formatos de resposta suportados por uma ação; ➢ @Any: especifica o mapeamento de polimorfismo; ➢ @View: define a vista de uma ação; ➢ @Basic: especifica o mapeamento básico de um bean; ➢ @Intercepts: especifica um interceptor.
  • 22. @Any
  • 23. @View