- JDK 8 e JDK 7 (Pois o iReport na versão instalada na lib só funciona com JDK 7)
- Netbeans/Eclipse ou qualquer IDE de sua preferência.
- Executar o comando SQL de criação da base de dados e de suas respectivas tarefas, pois como foi meu primeiro projeto, optei por não utilizar ORM que automatiza essa parte do banco de dados.
- Baixar as respectivas libs de conexão com banco de dados e do iReport que podem ser facilmente encontrados aqui
Execute o seguinte comando na pasta desejada:
https://github.com/reness0/Hotel-Java.git
Ou então baixe o winrar do arquivo aqui
Por ser meu primeiro projeto, não havia utilizado o maven, então é preciso que você baixe todas as depências manualmente, conforme foi especificado mais acima
O sistema realiza o controle de hóspedes e de quartos num sistema de hotel, realizando pedidos, reservamentos de quartos por parte dos hóspedes. As recepcionistas podem excluir, editar e consultar os hóspedes, assim como os gerentes fazem o mesmo com ela. Todos esses conceitos de entidades eu explico mais abaixo.
Os atores ou entidades presentes nesse projeto são bem simples, hierarquicamente de cima pra baixo, temos, respectivametne: Admnistrador, Gerente, Recepcionista e Hóspede, que todos realizam operações de CRUD com os suas entidades, hierarquicamente falando, inferiores. Com excessão do hóspede que não não realiza o CRUD, mas reserva quartos e solicita serviço de quarto juntamente com a recepcionista.
Eu realizava um curso técnico de informática no meu ensino médio (2018 - 2020) e um dos inúmeros trabalhos, era desenvolver um sistema de gestão de algum estabelecimento, como de um hotel, de um restaurante, petshop, entre outros. O coordenador do curso selecionou os grupos para a realização dos mesmos e o de hotel foi degelado a mim e a minha namorada, pois éramos os aluno que mais se destacavam em programação da turma e era o sistema mais difícil. Ela fez a parte do front-end e eu, a do back-end.
Como eu estava aprendendo conceitos de POO em Java na época, resolvi aplicar meus conhecimentos com essa oportunidade. Como era meu primeiro contato com a programação de fato - ignorando a lógica de programação - resolvi fazer um CRUD com tecnologias "ultrapassadas".
- JDBC
- IReport
- Swing
Foi utilizado como base um Diagrama ER que possibilitou uma melhor organização do projeto, além de uma facilitação imensa na hora de progrmar as classes e suas depêndencias. O sistema disponibiliza de:
- Sistema de usuários com login
- Controle de autorizações, hierarquia de algumas entidades do programa como: Administrador, Gerente, Recepcionista e Hóspede.
- CRUD de todas as entidades, respeitando a hierarquia de controle de acesso
- Relatório de quartos, hóspedes e repecionistas.
Como foi meu primeiro contato com programação, eu adquiri muito conhecimento, além de macetes que me ajudaram em outros projetos futuro. Aprendi conceitos muito importantes, tais como:
- Como funciona uma aplicação Desktop
- Como funciona uma aplicação Swing
- Como funciona um Banco de Dados
- Geração de relatórios
- POO e sintaxe Java.