{"id":15131456,"url":"https://github.com/lorialawrencez/armu","last_synced_at":"2026-02-17T14:01:44.115Z","repository":{"id":255783669,"uuid":"853603429","full_name":"LoriaLawrenceZ/ArMu","owner":"LoriaLawrenceZ","description":"Desafio Alura | Aplicação para armazenar dados de nossos artistas e músicas","archived":false,"fork":false,"pushed_at":"2024-10-16T02:30:47.000Z","size":77,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T21:12:08.658Z","etag":null,"topics":["alura","api","gradle","java","jpa","jpql","spring","sprng-boot"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LoriaLawrenceZ.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}},"created_at":"2024-09-07T02:41:44.000Z","updated_at":"2024-10-16T02:30:51.000Z","dependencies_parsed_at":"2025-02-11T23:35:26.207Z","dependency_job_id":"fc6a17b2-133e-4c0c-8c67-c88b69a00a40","html_url":"https://github.com/LoriaLawrenceZ/ArMu","commit_stats":null,"previous_names":["lorialawrencez/armu"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriaLawrenceZ%2FArMu","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriaLawrenceZ%2FArMu/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriaLawrenceZ%2FArMu/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LoriaLawrenceZ%2FArMu/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LoriaLawrenceZ","download_url":"https://codeload.github.com/LoriaLawrenceZ/ArMu/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247399886,"owners_count":20932880,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["alura","api","gradle","java","jpa","jpql","spring","sprng-boot"],"created_at":"2024-09-26T03:42:13.141Z","updated_at":"2025-10-04T20:09:32.688Z","avatar_url":"https://github.com/LoriaLawrenceZ.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\" name=\"readme-top\"\u003e\n    \u003ch1\u003eArMu\u003c/h1\u003e\n\u003c/div\u003e\n\n![thumbnail-Desafio Java](https://github.com/jacqueline-oliveira/3355-java-desafio/assets/66698429/4b068d55-5cfc-480c-b94f-7d48b3c91eb3)\n\n# Desafio\n\n\nVamos implementar uma aplicação para armazenar dados de nossos artistas e músicas preferidos em um banco de dados relacional, podendo buscar informações por artistas e consultar dados sobre os mesmos através de integração com a API do ChatGPT.\n\n- Você precisará de uma classe Artista, com os dados para representar o mesmo;\n- Será necessário também uma classe específica para representar as músicas;\n- Para o artista, pode praticar a implementação de *enum*, para definir o tipo do artista, por exemplo: solo, dupla ou banda;\n- Lembre-se de criar o projeto através do site do [Spring Initializr](https://start.spring.io/), onde já é possível adicionar as dependências do Spring Data JPA e do PostgreSQL;\n- Crie uma classe principal com o menu, com as opções desejadas, como: cadastrar artista, cadastrar música, pesquisar músicar por artistas, etc;\n- Lembre-se de estender o CommandLineRunner na classe do Spring, sobrescrevendo o método *run* para chamar o menu criado.\n\n\n\n## 🔨 Objetivos do projeto\n\n- O objetivo do projeto é praticar a modelagem de classes e relacionamentos utilizando o Spring Data JPA;\n- É importante descrever e implementar corretamente a relação entre Artista e Música, visto que um artista pode estar associado a mais de uma música;\n- Uma música só deve ser salva no banco de dados, caso o Artista tenha sido previamente cadastrado;\n- Praticaremos *derived queries* e *JPQL* para verificar se o artista já está cadastrado e buscar músicas por um determinado artista;\n- Faremos a integração com a API do ChatGPT para buscar informações sobre um determinado artista.\n\n\n\nBom desafio!\n\n---\n\n---\n\n---\n\n1. Spring initializer \n  - PostgreSQL Driver\n  - Spring Data JPA\n2. application.properties\n   - Setando a url do banco de dados\n      - `spring.datasource.url=jdbc:postgresql://localhost:5432/armu`\n   - Setando o usuário do banco de dados\n      - `spring.datasource.username=postgres`\n   - Setando a senha do banco de dados\n      - `spring.datasource.password=postgres`\n   - Trecho que explicita que permite o hibernate crie as tabelas automaticamente\n      - `spring.jpa.hibernate.ddl-auto=update`\n   - Trecho que permite que o hibernate mostre o sql gerado\n      - `spring.jpa.show-sql=true`\n   - Trecho que permite que o hibernate formate o sql gerado\n      - `spring.jpa.properties.hibernate.format_sql=true`\n   - Trecho que explicita o dialeto do banco de dados\n      - `hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect`\n3.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Florialawrencez%2Farmu","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Florialawrencez%2Farmu","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Florialawrencez%2Farmu/lists"}