https://github.com/jveiiga/java-spring-boot-back-end
API Rest usando Java com Spring Boot e banco de dados MySQL.
https://github.com/jveiiga/java-spring-boot-back-end
Last synced: 10 months ago
JSON representation
API Rest usando Java com Spring Boot e banco de dados MySQL.
- Host: GitHub
- URL: https://github.com/jveiiga/java-spring-boot-back-end
- Owner: jveiiga
- Created: 2024-05-08T05:23:08.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-20T18:37:49.000Z (about 1 year ago)
- Last Synced: 2025-01-02T07:14:53.759Z (12 months ago)
- Language: Java
- Homepage:
- Size: 125 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Projeto: E-Commerce Fullstack com Java e Spring Boot
### Diagramação
- **Diagrama de Classes**

- **Diagrama de Objetos**

## Visão Técnica - Back-End
O back-end foi implementado usando Java com Spring Boot e MySQL. As principais tecnologias e recursos utilizados incluem:
- **API Rest**: Construída com Java e Spring Boot.
- **Banco de Dados**: MySQL.
- **ORM**: JPA com Hibernate para mapeamento objeto-relacional.
- **Envio de Email**: SMTP da Google.
- **Armazenamento de Imagens**: S3 da Amazon.
- **Autenticação e Autorização**: Uso de tokens JWT.
- **Deploy na Nuvem**: Heroku.
- **Outros Conceitos**:
- Validação de dados.
- Tratamento de exceções personalizadas.
- Uso adequado do protocolo HTTP seguindo o padrão REST.
- Segurança (CORS e mais).
**Versões**: Spring Boot 2.0.x e 1.5.x.
## Metodologia
Todo o conteúdo do curso foi explicado em detalhes, com materiais de apoio para facilitar o acompanhamento. O código desenvolvido está disponível nesse repositório.
Os principais pontos da metodologia são:
- Explicação detalhada de cada etapa.
- Materiais de apoio para consulta.
- Código organizado no GitHub com commits relacionados às aulas.
## O curso ofereceu conteúdo adicional, incluindo:
- **Ferramentas de Apoio**: Seção dedicada a ferramentas que auxiliam no desenvolvimento com Spring Boot.
## Público-Alvo
Este curso é ideal para quem deseja:
- Aprender a construir um back-end com domínio complexo usando Java e Spring Boot.
- Aplicar conteúdos acadêmicos em um projeto comercial real.
- Incrementar o portfólio e o currículo.
## O Que Eu Aprendi
- Implementação de modelos de domínio.
- Mapeamento objeto-relacional com JPA.
- Acesso a dados com Spring Data.
- Desenvolvimento em camadas.
- Criação de API REST com serialização JSON.
- Desenvolvimento baseado em casos de uso.
- Autenticação e autorização com tokens JWT.
- Envio de emails.
- Armazenamento de imagens com Amazon S3.
- Implantação do back-end no Heroku.
---
## Tecnologias Utilizadas
### Back-End:
- Java
- Spring Boot
- MySQL
- JPA (Hibernate)
- SMTP (Google)
- AWS S3
- JWT (JSON Web Token)
- Heroku
---
## Estrutura do Projeto
- **Backend**:
- `src/main/java`: Contém o código-fonte Java do back-end.
- `src/main/resources`: Arquivos de configuração, incluindo `application.properties`.
- **Endpoints**: API RESTful organizada por casos de uso.
-
---
## Instalação e Configuração
### Pré-requisitos
- JDK 8 ou superior
- Maven
- MySQL
- Conta na AWS para uso do S3
- Conta no Heroku
### Configuração do Back-End
1. Clone o repositório:
```bash
git clone https://github.com/jveiiga/Java-Spring-Boot-Back-End.git
```
2. Instale as dependências:
```bash
mvn install
```
3. Configure o banco de dados MySQL no arquivo application.properties:
```properties
spring.datasource.url=jdbc:mysql://localhost:3306/seu-banco-de-dados
spring.datasource.username=seu-usuario
spring.datasource.password=sua-senha
```
4.Execute o projeto:
```bash
mvn spring-boot:run
```