Loading repository data…
Loading repository data…
jabes-christian / repository
Uma aplicação web de encurtador de Url usando Spring Boot como stack central
Aplicação web para encurtamento de URLs desenvolvida com Java + Spring Boot, utilizando Spring Security, Spring Data JPA, Thymeleaf e PostgreSQL.
O sistema permite que usuários criem links encurtados, armazenem essas URLs no banco de dados e realizem redirecionamentos automáticos ao acessar a URL curta.
Este projeto foi desenvolvido para praticar e demonstrar conceitos importantes do ecossistema Spring:
A aplicação segue uma arquitetura em camadas:
Controller → Service → Repository → Entity → Database
Também existem camadas auxiliares para configuração, exceções e DTOs.
src/main/java/dev/jchristian/EncurtadorUrl
config
└── WebSecurityConfig
domain
├── entity
├── Repository
├── Service
├── models
└── exceptions
web
├── controller
└── dtos
GlobalExceptionHandler
ApplicationProperties
EncurtadorUrlApplication
A aplicação utiliza Spring Security para controle de acesso.
Funcionalidades:
O banco utilizado é PostgreSQL.
As migrations são gerenciadas com Flyway.
Exemplo:
V1__create_user_table.sql
V2__create_short_url_table.sql
V3__create_relations.sql
Clone o repositório:
git clone https://github.com/seu-usuario/encurtador-url.git
Entre no diretório:
cd encurtador-url
Execute:
mvn clean install
mvn spring-boot:run
Aplicação disponível em:
Build da aplicação:
docker compose build
Subir containers:
docker compose up
Rodar em background:
docker compose up -d
Parar containers:
docker compose down
Aplicação: encurtador_url_app
Banco: PostgreSQL
Jabes Christian\