Prévia do material em texto
Desenvolvimento Web Full MVC
MVC
➔ Model - View - Controller
➔ O MVC é um padrão de arquitetura de software chamado Model-View-Controller
(Modelo–Visão–Controlador). Ele é muito usado em desenvolvimento de aplicações, principalmente
web e desktop, para organizar o código em camadas com responsabilidades bem definidas.
MVC
➔ Model (Modelo)
● Representa os dados e as regras de negócio da aplicação.
● É responsável por acessar o banco de dados, aplicar validações e manter a lógica da aplicação.
● Exemplo: uma classe Usuario que busca informações no banco.
➔ View (Visão)
● É a interface com o usuário.
● Mostra os dados do Model de forma amigável.
● Não contém lógica de negócio, apenas exibe o que o controlador envia.
● Exemplo: uma página HTML que mostra a lista de usuários.
➔ Controller (Controlador)
● Atua como um intermediário entre o Model e a View.
● Recebe as entradas do usuário (via cliques, formulários, etc.), processa essas requisições usando o
Model e escolhe qual View será exibida.
● Exemplo: um método listarUsuarios() que pega os dados do Model e envia para a View.
Tipos de Arquiteturas
➔ Arquitetura em Camadas
➔ Arquitetura em Microserviços
➔ Arquitetura em Clean Architecture
➔ MVP (Model-View-Presenter)
➔ MVVM (Model-View-ViewModel)
➔ HMVC (Hierarchical MVC)
Maven
Maven
➔ Maven é uma ferramenta de gerenciamento de dependências e automação de builds para
projetos Java.
➔ Simplifica a compilação, empacotamento, testes e deploy.
➔ Evita baixar bibliotecas manualmente; Maven resolve dependências automaticamente.
➔ Exemplo: ao adicionar spring-boot-starter-web no pom.xml, o Maven baixa todas as libs
necessárias.
Maven
Maven
Maven
Maven
Maven
Maven
Maven
Maven
Maven
Maven
Maven
Estrutura básica do Maven
src/
main/
java/ → código-fonte
resources/ → arquivos de configuração
test/
java/ → testes unitários
target/ → diretório de saída (build)
pom.xml → arquivo principal de configuração
O pom.xml
org.springframework.boot
spring-boot-starter-web
2.7.5
➔ Arquivo XML que centraliza as configurações do projeto.
Contém:
● Informações do projeto: nome, versão, descrição.
● Dependências: bibliotecas externas necessárias.
● Plugins: tarefas adicionais (compilação, testes, empacotamento).
● Configuração do build.
O ciclo de vida do maven
mvn clean install
➔ O Maven possui fases pré-definidas:
● clean → remove arquivos gerados em builds anteriores.
● compile → compila o código fonte.
● test → executa os testes automatizados.
● package → empacota o projeto (gera .jar ou .war).
● install → instala no repositório local.
● deploy → publica no repositório remoto.
Benefícios do maven
➔ Padronização do ciclo de vida do build.
➔ Gerenciamento automático de dependências (inclusive transitivas).
➔ Integração com ferramentas (Jenkins, SonarQube, Docker, etc).
➔ Reutilização: módulos podem ser compartilhados entre projetos.
➔ Comunidade grande: vasto repositório central (Maven Central).
Projeto
Projeto
Projeto
Projeto
Projeto
Projeto
Projeto
Projeto
Projeto Eclipse
Projeto Eclipse
Projeto Eclipse
Projeto Eclipse
Projeto Eclipse
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-test
test
Projeto Eclipse
package com.example.demo;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class MensagemController {
@GetMapping("/hello")
public String hello() {
return "Olá, alunos! 🚀 Esse é um exemplo com Spring Boot.";
}
}
Projeto Eclipse
mvn clean install -> No Terminal
mvn spring-boot:run