📌 Índice
O que o sistema vai fazer
- Investir em cripto ativos de maneira online.
- Acompanhamento / visualização dos investimentos.
- Enviar valores para investimentos vindos de diversas empresas do grupo.
Segurança, disponibilidade, restrições etc.
- Segurança de dados e valores trafegados em rede.
- Disponbilidade do serviço 24/7.
- Escalabilidade para lidar com alto fluxo de acessos.
- Acessar plataforma apenas via web (sem aplicativo).
Há dois modos de execução: Oracle (produção) e H2 em memória (desenvolvimento/teste).
Modo H2 (recomendado para testes rápidos)
- Compilar:
mvn clean package - Executar com H2 embutido e criação automática do schema (jar:
target/Verity-1.0-SNAPSHOT.jar):- Linux/macOS:
DB_VENDOR=h2 INIT_DB=true java -jar target/Verity-1.0-SNAPSHOT.jar
- Windows (PowerShell):
$env:DB_VENDOR='h2'; $env:INIT_DB='true'; java -jar target/Verity-1.0-SNAPSHOT.jar
- Linux/macOS:
Observações
- O schema é criado a partir de
verity-ddl.sqlao definirINIT_DB=trueouDB_VENDOR=h2. - Em Oracle, se o schema estiver ausente, a aplicação detecta automaticamente (tabela
ASSETinexistente) e executa a criação do schema na inicialização. - A URL padrão do H2 é
jdbc:h2:mem:verity;MODE=Oracle;DB_CLOSE_DELAY=-1com usuáriosae senha vazia.
Modo Oracle (ambiente real)
- Configure as variáveis
DB_USEReDB_PASSWORDe, opcionalmente,DB_URL(padrão:jdbc:oracle:thin:@//oracle.fiap.com.br:1521/ORCL). Você pode defini-las no ambiente ou em um arquivo.envna raiz do projeto. - Compile:
mvn clean package(primeira execução baixa o driverojdbc11). - Execute:
java -jar target/Verity-1.0-SNAPSHOT.jar
O jar final inclui os drivers necessários (via Shade), evitando ClassNotFoundException do driver JDBC.
Exemplo de .env
# Banco real (Oracle)
DB_URL=jdbc:oracle:thin:@//oracle.fiap.com.br:1521/ORCL
DB_USER=SEU_USUARIO
DB_PASSWORD=SUA_SENHA
# Para usar H2 em memória (desenvolvimento), também é possível:
# DB_VENDOR=h2
# INIT_DB=true