Aplicativo para gerenciar consultas para a matéria de Engenharia de Software(BCC3004)
Produção:
Conta de Admin:
admin@admin.com 11235813
- Spring Framework 🍃
- Spring Web
- Spring Data JPA
- Spring Security
- Maven 🪶
- PostgreSQL 🐘
- JWT Token 🪙
- Docker 🐋
- Next.ts
- React Hook Form + Zod
- Axios
- Tailwind CSS
- Material UI
- AWS RDS (Banco de dados)
- Render (Back-end)
- Vercel (Front-end)
O Spring Framework utiliza vários padrões de projeto para oferecer flexibilidade, modularidade e extensibilidade. Abaixo estão alguns dos principais:
Padrão Singleton:
- Por padrão, os beans no Spring são gerenciados como singletons. Ou seja, o container Spring cria apenas uma instância de um bean e a reutiliza sempre que necessário.
Padrão Factory:
- O Spring utiliza o padrão de fábrica (Factory) para a criação de objetos. O
BeanFactory
eApplicationContext
são exemplos de fábricas que criam e gerenciam os beans.
Padrão Proxy:
- O Spring utiliza proxies, especialmente em funcionalidades como transações, segurança e AOP (Programação Orientada a Aspectos). O padrão proxy permite adicionar comportamento adicional aos objetos de forma transparente.
A aplicação está configurada para execução em Docker, minimizando surpresas. Para isso, o frontend e o backend foram separados em containers distintos. Abaixo estão os comandos necessários para executar cada parte:
OBS: Em alguns casos, pode ser necessário executar o Docker como root.
cd frontend
npm install
npm run dev
cd backend
docker-compose up
João Victor Briganti de Oliveira
Fernando Roberto Delbone
Victor Hugo Brito Silva
Matheus Floriano Saito da Silva