{"id":27386259,"url":"https://github.com/natsalete/projeto-em-java-web-carros","last_synced_at":"2026-04-30T12:34:47.591Z","repository":{"id":286507056,"uuid":"961609841","full_name":"natsalete/Projeto-em-Java-Web-Carros","owner":"natsalete","description":"Sistema web em Java com Spring Boot para gerenciamento de carros, com funcionalidades de cadastro, edição, exclusão e listagem, autenticação de usuários e controle de acesso por perfis.","archived":false,"fork":false,"pushed_at":"2025-08-13T18:45:58.000Z","size":84,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-28T09:37:39.999Z","etag":null,"topics":["crud","java","lombok","mvc","mysql","spring-security","springboot","testes","web"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/natsalete.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-04-06T21:25:46.000Z","updated_at":"2025-08-13T18:46:03.000Z","dependencies_parsed_at":"2025-08-13T20:16:54.529Z","dependency_job_id":"64c2429c-0610-45eb-94ad-1ccac0545ee9","html_url":"https://github.com/natsalete/Projeto-em-Java-Web-Carros","commit_stats":null,"previous_names":["natsalete/projeto-em-java-web-carros"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/natsalete/Projeto-em-Java-Web-Carros","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natsalete%2FProjeto-em-Java-Web-Carros","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natsalete%2FProjeto-em-Java-Web-Carros/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natsalete%2FProjeto-em-Java-Web-Carros/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natsalete%2FProjeto-em-Java-Web-Carros/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/natsalete","download_url":"https://codeload.github.com/natsalete/Projeto-em-Java-Web-Carros/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natsalete%2FProjeto-em-Java-Web-Carros/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32465009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T22:27:22.272Z","status":"online","status_checked_at":"2026-04-30T02:00:05.929Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["crud","java","lombok","mvc","mysql","spring-security","springboot","testes","web"],"created_at":"2025-04-13T17:18:07.212Z","updated_at":"2026-04-30T12:34:47.560Z","avatar_url":"https://github.com/natsalete.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Projeto Java Web - Gerenciamento de Carros\r\n\r\n![Java](https://img.shields.io/badge/Java-ED8B00?style=for-the-badge\u0026logo=java\u0026logoColor=white)\r\n![Spring Boot](https://img.shields.io/badge/Spring_Boot-6DB33F?style=for-the-badge\u0026logo=spring\u0026logoColor=white)\r\n![MySQL](https://img.shields.io/badge/MySQL-4479A1?style=for-the-badge\u0026logo=mysql\u0026logoColor=white)\r\n![MIT License](https://img.shields.io/badge/License-MIT-green?style=for-the-badge)\r\n\r\n## Descrição\r\n\r\nEste projeto é um sistema web desenvolvido em **Java** com **Spring Boot** para gerenciamento de carros. Ele oferece funcionalidades completas de **CRUD** (Criar, Ler, Atualizar e Excluir) de carros, além de autenticação e controle de acesso para diferentes perfis de usuário.\r\n\r\nO projeto inclui:\r\n- Cadastro, edição, exclusão e listagem de carros.\r\n- Interface web com validações de campos e mensagens de erro.\r\n- Controle de acesso baseado em perfis (admin e usuário).\r\n- Segurança com **Spring Security**.\r\n- Testes de unidade e integração.\r\n- Banco de dados **MySQL** para persistência.\r\n\r\n## Funcionalidades\r\n\r\n- **Carros**\r\n  - Cadastrar novos carros\r\n  - Listar todos os carros\r\n  - Editar carros existentes\r\n  - Excluir carros\r\n- **Segurança**\r\n  - Login com autenticação\r\n  - Controle de acesso baseado em papéis\r\n  - Página de acesso negado\r\n- **Interface**\r\n  - Navegação entre páginas com cabeçalho e rodapé reutilizáveis\r\n  - Validação de formulários e exibição de mensagens de erro\r\n- **Testes**\r\n  - Testes unitários da camada web\r\n  - Testes de integração com banco H2 (para testes)\r\n\r\n## Configuração do Banco de Dados\r\n\r\nAntes de rodar o projeto, é necessário criar o banco de dados **MySQL** e configurar o arquivo `application.properties`:\r\n\r\n1. Crie o banco de dados no MySQL:\r\n```sql\r\nCREATE DATABASE carros;\r\n```\r\n2. Configure o arquivo  `src/main/resources/application.properties` com suas credenciais:\r\n```properties\r\nspring.application.name=carros\r\nspring.datasource.url=jdbc:mysql://localhost:3306/carros?useSSL=false\u0026serverTimezone=UTC\r\nspring.datasource.username=root\r\nspring.datasource.password=root\r\nspring.jpa.hibernate.ddl-auto=update\r\n# spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver\r\n```\r\n\u003e⚠️ Ajuste `username` e `password` conforme seu usuário do MySQL.\r\n\r\n## Como Rodar\r\n\r\n1. Clone o repositório:\r\n```bash\r\ngit clone https://github.com/natsalete/Projeto-em-Java-Web-Carros.git\r\n```\r\n2. Abra o projeto na sua IDE favorita (IntelliJ, Eclipse, VS Code).\r\n3. Certifique-se de que o MySQL está rodando e o banco `carros` existe.\r\n4. Execute a aplicação:\r\n```bash\r\nmvn spring-boot:run\r\n```\r\nou, se estiver usando Gradle:\r\n```bash\r\n./gradlew bootRun\r\n```\r\n5. Acesse a aplicação em:\r\n```bash\r\nhttp://localhost:8080\r\n```\r\n\r\n## Estrutura do Projeto\r\n- **model:**  Classes de entidades (Usuario, Carro)\r\n- **repository:** Interfaces para persistência\r\n- **service:** Lógica de negócio.\r\n- **controller:** Endpoints e controle das páginas web.\r\n- **security:** Configuração de segurança e roles.\r\n- **tests:** Testes unitários e de integração.\r\n\r\n## Licença\r\nEste projeto está licenciado sob os termos da **Licença MIT**.  \r\nVocê pode utilizar, modificar e distribuir este código livremente, desde que mantenha os créditos originais.  \r\n📄 [Clique aqui para ler a Licença MIT](https://opensource.org/licenses/MIT)  \r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnatsalete%2Fprojeto-em-java-web-carros","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnatsalete%2Fprojeto-em-java-web-carros","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnatsalete%2Fprojeto-em-java-web-carros/lists"}