Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/samuelrocha91/agrix

Projeto Java realizado com o ecossistema Spring e que implementa um sistema de controle de fazendas.
https://github.com/samuelrocha91/agrix

docker h2-database java junit5 jwt mysql spring-data-jpa spring-security spring-web

Last synced: about 10 hours ago
JSON representation

Projeto Java realizado com o ecossistema Spring e que implementa um sistema de controle de fazendas.

Awesome Lists containing this project

README

        

# Java Projects Logo 🌱 Agrix - Gestão e Monitoramento de Fazendas Java Projects Logo

## 🌐
[![Português](https://img.shields.io/badge/Português-green)](https://github.com/SamuelRocha91/Agrix/blob/main/README.md)
[![Español](https://img.shields.io/badge/Español-yellow)](https://github.com/SamuelRocha91/Agrix/blob/main/README_es.md)
[![English](https://img.shields.io/badge/English-blue)](https://github.com/SamuelRocha91/Agrix/blob/main/README_en.md)
[![Русский](https://img.shields.io/badge/Русский-lightgrey)](https://github.com/SamuelRocha91/Agrix/blob/main/README_ru.md)
[![中文](https://img.shields.io/badge/中文-red)](https://github.com/SamuelRocha91/Agrix/blob/main/README_ch.md)
[![العربية](https://img.shields.io/badge/العربية-orange)](https://github.com/SamuelRocha91/Agrix/blob/main/README_ar.md)

## Descrição do Projeto

O projeto **Agrix** é uma aplicação web para gestão e monitoramento de fazendas, desenvolvida durante o módulo de Java do curso de Desenvolvimento Web da Trybe. O objetivo principal é auxiliar fazendas que buscam melhorar suas tecnologias e otimizar o uso sustentável do solo, gerenciando plantações, estoques de fertilizantes, entre outros recursos.

📈 Diagrama Banco de dados

![Diagrama do banco de dados](./images/diagrama.png)

Funcionalidades Implementadas

- **Autenticação e Autorização**: Controle de acesso seguro utilizando Spring Security.
- **Gestão de Fazendas e Plantações**: Rotas para cadastro e monitoramento de fazendas, plantações e fertilizantes.
- **API REST**: Interface para interação com o sistema.
- **Gerenciamento de Erros**: Tratamento robusto de erros com Spring Web.
- **Execução em Docker**: Configuração completa para rodar a aplicação em containers Docker.

Habilidades Desenvolvidas

- Uso avançado do **Spring Framework** para construir aplicações seguras e robustas.
- Implementação de **Spring Security** para autenticação e autorização de usuários.
- Desenvolvimento de uma **API REST** com rotas de CRUD para gestão agrícola.
- Integração com o **Spring Data JPA** para persistência de dados em MySQL.
- Uso de **Docker** para conteinerização da aplicação e ambiente de testes.
- Criação de testes unitários com **JUnit**.

Como Executar



1. **Clonar o Repositório**:
```bash
git clone https://github.com/SamuelRocha91/agrix.git
```

2. **Acessar o Diretório**:
```bash
cd agrix
```

3. **Compilar e Executar**:
Use Maven para rodar o projeto:
```bash
mvn spring-boot:run
```

4. **Executar os Testes**:
Para rodar testes unitários:
```bash
mvn test
```

5. **Executar com Docker**:
Construa e rode o container Docker:
```bash
docker compose up
```

Outros Projetos



- 🗳️ [Sistema de Votação](https://github.com/SamuelRocha91/sistemaDeVotacao)
- 🏛️ [Localizador de Museus](https://github.com/SamuelRocha91/localizadorDeMuseus)
- 📃 [Regras de Progressão](https://github.com/SamuelRocha91/project_rule_of_progression)