Тёмный

Desafio Vagas: API de lugares com Spring Boot! 

Giuliana Bezerra
Подписаться 16 тыс.
Просмотров 19 тыс.
50% 1

Que aprender de forma prática as etapas para resolver um desafio real para uma vaga backend, utilizando o melhor do #java e #springboot? Então assiste esse vídeo!
Dá só uma olhada nas práticas adotadas aqui:
- SOLID
- Testes automatizados
- Consultas com filtros dinâmicos usando o Query By Example
- API reativa na web e na camada de banco
- Uso de DTOs para a API
- Injeção de Dependências
- Geração automática do Swagger com a OpenAPI 3
- Geração de slugs automática com o Slugify
- Auditoria sobre criação e atualização da entidade
💻 Projeto: tinyurl.com/place-service
📖 Artigos:
- Git: tinyurl.com/artigo-git
- README: tinyurl.com/artigo-readme
🤩 Seja membro deste canal e ganhe benefícios:
/ @giulianabezerra
🌟 Conheça também os meus conteúdos em outras plataformas:
Blog: / giuliana-bezerra
Curso sobre Spring Batch: bit.ly/3ZgQXOB
Curso sobre otimização com Spring Batch: bit.ly/44PV2u1
Curso sobre testes com Spring Boot: bit.ly/3sOig6w
Curso sobre AdonisJS: bit.ly/3ZhRXlu

Наука

Опубликовано:

 

28 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 163   
@catye2330
@catye2330 14 дней назад
muito bom!! aliás, fico muito feliz de ver mulheres tão incríveis na tech
@funkysaucemannn
@funkysaucemannn Год назад
seu canal e seus cursos na udemy salvaram minha carreira de dev backend java. eu ate consigo construir uma base lendo documentação, mas seus vídeos são tão didáticos e com uma linguagem simples para compreensão humana. por favor faça um curso focado em programação reativa com webflux
@giulianabezerra
@giulianabezerra Год назад
Que bom saber disso, obrigada pelo seu feedback super positivo! Em relação ao curso, tá anotado aqui, já tenho alguns planejados 😊
@danielfaustinosilva8505
@danielfaustinosilva8505 Год назад
muito bom Giuliana que didatica parabens!
@raymolide
@raymolide Месяц назад
Simplesmente incrível.
@CadetuRodrigoo
@CadetuRodrigoo 3 месяца назад
Sou fa demais. Que video, que didatica!
@myckwilliam
@myckwilliam Год назад
Inscrito! :D
@guilhermerodriguesdeolivei8539
Agradeço demais pelo conteudo!! Maravilhoso!!
@giulianabezerra
@giulianabezerra Год назад
Que bom que curtiu! 🤩
@renatolouro
@renatolouro 11 месяцев назад
Vídeo bem completo e bem explicado! Obrigado!
@giulianabezerra
@giulianabezerra 11 месяцев назад
Que bom que curtiu, Renato! 😁
@welberzindaprogramacao
@welberzindaprogramacao 11 месяцев назад
Excelente vídeo!
@giulianabezerra
@giulianabezerra 11 месяцев назад
Vlwzão! 😊
@MarceloLemesdaSilveira
@MarceloLemesdaSilveira Год назад
Parabéns, muito didático e com vários insights sobre boas práticas, gostei muito.
@giulianabezerra
@giulianabezerra Год назад
Vlw, Marcelo! 🤩
@mateussouza655
@mateussouza655 Год назад
Sensacional. Parabéns.
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada 😊, Mateus!
@user-ow9xy9fu4h
@user-ow9xy9fu4h 11 месяцев назад
Vídeo muito bom, toda vez que tenho a chance recomendo o seu canal!
@giulianabezerra
@giulianabezerra 11 месяцев назад
Que bacana! Brigada demais pelo apoio 🤗
@albertofelipemonteirosena2166
conteúdo incrível, obrigado! Continua pf
@giulianabezerra
@giulianabezerra Год назад
Vou continuar sim! Quero trazer desafios de outras plataformas também 🤩
@user-dw2bd1ct3c
@user-dw2bd1ct3c Год назад
Muito bom, valeu.
@giulianabezerra
@giulianabezerra Год назад
Obrigada! 🙏
@Pedro-jx6xk
@Pedro-jx6xk Год назад
massa demais, parabéns
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada! ✌
@felipeneves5283
@felipeneves5283 Год назад
Excelente conteúdo, muito obrigado por fornecer esse material.
@giulianabezerra
@giulianabezerra Год назад
Que bom que curtiu!
@igordamatapessanha3431
@igordamatapessanha3431 10 месяцев назад
Muito top Guiliana, aprendi muito nesse vídeo.
@giulianabezerra
@giulianabezerra 10 месяцев назад
Que ótimo! 🤩
@fabriciosaand
@fabriciosaand Год назад
Muito bom Giuliana! Parabéns!!
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada, Fabricio! 😁
@nandin1010
@nandin1010 Год назад
Parabéns! Excelente conteúdo.
@giulianabezerra
@giulianabezerra Год назад
🤩
@abiliocaldas
@abiliocaldas Год назад
Sensacional sua facilidade de repassar conhecimento!
@giulianabezerra
@giulianabezerra Год назад
Que bom que curtiu, Abilio!
@barberinoxd
@barberinoxd Год назад
Agradeço mto a Deus por ter caído de paraquedas no seu canal.. obrigado por tudo! ❤
@giulianabezerra
@giulianabezerra Год назад
Eu que agradeço a tua audiência, Takashi! 🤩
@lucasdesousacosta1535
@lucasdesousacosta1535 Год назад
Conteúdo muito bom !
@giulianabezerra
@giulianabezerra Год назад
Obrigada, Lucas! 🙏
@mgmoura
@mgmoura Год назад
parabéns pelo conteúdo, muito legal
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada! 😁
@Dobock8
@Dobock8 9 месяцев назад
Só pelo fato de voce adicionar conhecimentos novos. Já vou seguir você e assistir mais vídeos. Muito obrigado pelo conhecimento.
@giulianabezerra
@giulianabezerra 9 месяцев назад
🙏🤩
@douglasbarcellos8401
@douglasbarcellos8401 Год назад
Gostei muito do video, muito boa a organização
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada, Douglas! 😊
@pedropaulocamelo283
@pedropaulocamelo283 Год назад
Meu mais sincero obrigado, Giuliana. Você é dez. irei dibulgar seu canal. Se puder, faça mais videis assim
@giulianabezerra
@giulianabezerra Год назад
Vlw demais, Pedro! Obrigada pelo apoio, trarei mais vídeos desse tipo.
@HelomRezende
@HelomRezende Год назад
Ótimo conteúdo, bem objetiva e código sem firulas! Continue assim!
@giulianabezerra
@giulianabezerra Год назад
Que bom que curtiu, Helom! 🤩
@lucarauj
@lucarauj Год назад
Conteúdo massa, Giuliana, e diferenciado também 👌🏼
@giulianabezerra
@giulianabezerra Год назад
Muito obrigada, Luca! 😁
@rictonietti
@rictonietti Год назад
Parabéns mais uma vez. tenho todos os seus cursos e me ajudaram muito em minha carreira.
@giulianabezerra
@giulianabezerra Год назад
Que ótimo! Obrigada pela força e espero te ver bastante aqui no canal! 🤩
@titibatera
@titibatera Год назад
Sempre muito bom e com essa tranquilidade!!! **** FAZ LIVE ****
@giulianabezerra
@giulianabezerra Год назад
Vou fazer quando chegar aos 10K de inscritos :D
@thiagoeauddy
@thiagoeauddy Год назад
Fantastico... parabens manda mais!!!! Assim eu descobro como ainda sou verde....
@giulianabezerra
@giulianabezerra Год назад
O Spring é um universo mesmo! O bom é que assim tenho bastante assunto pra trazer pro canal 😎
@tav1119
@tav1119 10 месяцев назад
parabéns pela iniciativa ! Nos próximos passe pelo tratamento de exceções, vc fez praticamente tudo, só faltou isso! Penso que muita gente tem dificuldade com esse tópico ao fazer projetos. O spring já facilita muita coisa com os exceptionHandler.
@giulianabezerra
@giulianabezerra 10 месяцев назад
É sim! Eu tenho um desafio que vou trazer pro canal que vai cobrir esse assunto, realmente o Spring ajuda demais!
@felipedamascena3912
@felipedamascena3912 Год назад
Gostei muito da voz e o jeito como fala. Essa combinação me fez ver o vídeo inteiro na velocidade normal e querer ver outros muito bom Giuliana continue produzindo, precisando de ajuda estamos aew.
@giulianabezerra
@giulianabezerra Год назад
Fiquei muito feliz com o teu comentário, Felipe! Eu sempre me esforço pra fazer os vídeos da forma mais agradável possível para quem assiste, bom saber que está tendo o resultado esperado. Espero que curta os outros vídeos do canal! 😉
@emanuelseverino8721
@emanuelseverino8721 Год назад
Giuliana, meus parabéns. Eu não manjo nada de JAVA e muito menos de SPRING, mas só de assistir essa aula você me esclareceu tudo que precisava saber sobre SOLID no BACKEND. Parabéns ótima didática e ensinamento. SUCESSO!
@giulianabezerra
@giulianabezerra Год назад
Que ótimo! Obrigada pelo feedback e sucesso pra ti, certeza que vais adorar o Spring + Java 😄
@wesleymrosa
@wesleymrosa 7 месяцев назад
A explicação é excelente ! #Parabéns Estou inscrito, assistindo e curtindo ! Tomo a liberdade de sugerir um tema para um vídeo futuro: e-commerce.
@giulianabezerra
@giulianabezerra 7 месяцев назад
Sugestão anotada! 🙏
@DanielCardosoDev
@DanielCardosoDev 2 месяца назад
Que conteúdo ótimo!!! Parabéns mesmo, tanto pela didática, quanto pela calma que passa ao falar. São poucos os que têm essa habilidade e dom de ensinar! O Client utilizei o Postman, foi mais pela familiaridade que eu já tinha rs. Com o Docker sempre fiquei com o pé atrás de usar, mais por "neura" minha. Na "buildar" o projeto deu erro na etapa de testes, rodei novamente e funcionou de boa!!! E bemdito readme bem estruturado rsrs Certeza que vou recomendar seu canal e consumir os conteúdos daqui também! 😁
@giulianabezerra
@giulianabezerra 2 месяца назад
Obrigada pelo feedback e apoio! 🙏🏻🤗
@richardben6525
@richardben6525 Год назад
Parabéns pela didática. Estava pensando em voltar com o Java e esse vídeo caiu como uma luva
@giulianabezerra
@giulianabezerra Год назад
Que bacana! Volta pro Javinha, ele tá ficando cada vez melhor 😁
@miguel-pressstart
@miguel-pressstart Месяц назад
Boa aula, porque não deixou os campos de criação e atualização como timestamp? Na busca do lugar criado, estes campos estariam preenchidos automaticamente assim como o Id
@wldomiciano
@wldomiciano Год назад
Conteúdo excelente. Foi muito bom acompanhar sua linha de raciocínio. Eu tava com Spring Data JPA na cabeça, que é o que eu estou mais acostumado, e achei mó estranho vc usando um record como entidade, mas depois que me dei conta de que vc usou Spring Data R2DBC e foi muito bom ver que com ele também é bem simples fazer as interações com o banco de dados. Este conteúdo é realmente precioso. Obrigado por compartilhar.
@giulianabezerra
@giulianabezerra Год назад
Eu me acostumei a usar records para tudo, mas de fato a entidade conceitualmente é mutável, então uma classe pode ser mais apropriada para representá-la. Com o R2DBC você poderia escolher entre classe e record, a vantagem dos records é que facilitam na questão dos gets / sets / contrutores (escrever menos nos vídeos é algo desejável!).
@carlosync
@carlosync Год назад
Pra mim tbm ainda não tinha visto esse padrão, pelo menos agora nós já sabemos né rsrs.
@antonioalves8423
@antonioalves8423 Год назад
Excelente conteudo! Tenho muita dificuldade com o Security, ainda mais nas mudanças que ocorreram, seria muito interessante, para mim...rsrsrs..., inserir as regras para usuarios e papeis, com algumas permissões e restrições. Grato pelo conhecimento compartilhado.
@giulianabezerra
@giulianabezerra Год назад
Antônio, pra esse desafio a ideia são rotas abertas mesmo, mas tem uns vídeos no canal sobre o security e tbm tem um na lista pra eu trazer sobre esse controle de papéis, fica de olho 😉
@hvalmer
@hvalmer 10 месяцев назад
Giuliana, gostei da sua aula e didática, ganhaste mais um seguidor, valeu!!!
@giulianabezerra
@giulianabezerra 10 месяцев назад
Aeww! 🤩
@robinhor9
@robinhor9 9 месяцев назад
Gostei muito do vídeo e tenho procurado muito conteúdo assim bem didático para aperfeiçoar o conhecimento em Java, parabéns e muito obrigado por compartilhar conhecimento. Gostaria de ver mais vídeos sobre solução de desafios. Pontos que fiquei na dúvida foi sobre implantar tratamento de exceção e se a parte no service que você deixou meio hardcode os campos do request e response não daria para construir de outra forma para se caso ter uma manutenção de campo novo , a alteração ficar mais fácil, senti que teria que alterar muita coisa se isso acontecesse.
@giulianabezerra
@giulianabezerra 9 месяцев назад
Então, o que costumo fazer é criar um mapper e passar o objeto de negócio pro service e não o dto. Não sei se foi essa a sua pergunta. O ideal é definir uma API estável, pra que esse DTO não fique mudando com frequência, apenas as regras de negócio deveriam mudar.
@derek7367
@derek7367 26 дней назад
Giu, poderia explicar melhor sobre essa parte de docker e como utiliza-lo no ambiente de desenvolvimento?
@giulianabezerra
@giulianabezerra 26 дней назад
O Docker é utilizado como uma forma de facilmente configurar uma máquina para executar as suas aplicações. Por exemplo, ao invés de te pedir pra instalar o Java e mysql, baixar a aplicação, construir e executá-la, posso te informar uma imagem docker com tudo pronto que vc só vai precisar executar com um único comando e tudo estará funcionando. Não tem mais aquela dificuldade e risco de alguém configurar errado as ferramentas ou usar versões incorretas delas, já vai estar tudo configurado nessa imagem que vai ser a cópia da máquina que roda a aplicação. Assim é garantido que vai tudo funcionar.
@giulianabezerra
@giulianabezerra 26 дней назад
Depois da uma olhada na playlist da arquitetura ao deploy em que resolvo um desafio fazendo inclusive essa parte do Docker.
@derek7367
@derek7367 26 дней назад
@@giulianabezerra obrigado giu🫶🏾
@maytton
@maytton 10 месяцев назад
Parabéns pelo conteúdo, muito bom. Uma pergunta, o uso do VS Code é gosto pessoal?
@giulianabezerra
@giulianabezerra 10 месяцев назад
É gosto pessoal, eu sou uma pessoa simples, gosto de coisas simples. Eu vim do Eclipse e ele era pesadão e poluído, o VsCode acho bem mais leve e simples. Eu já usei o IntelliJ Community também mas me sinto mais produtiva no VsCode mesmo. Mas não acho que tem melhor ou pior, tem o que cada um se sente mais confortável em usar :)
@lucasdelson
@lucasdelson Год назад
Ganhou mais um inscrito.
@carlosync
@carlosync Год назад
Muito show, conheço pouco de programação reativa do spring e não se hoje em dia é padrão do mercado ou se ainda usam o padrão rest convencional do spring. Parabéns pelo vídeo. E estranho ver desenvolvedor Java usando Vs Code para codar kkkk. Eu não vivo sem o IntelliJ idea antes usava bastante o eclipse rsrrsrs, mas vs code pra mim não dar kkkkkk
@giulianabezerra
@giulianabezerra Год назад
Carlos, eu tbm venho do Eclipse, acabei indo pro vscode pq achei mais simples e atendia as minhas necessidades. O intelliJ é tbm um ótimo editor, mas em incomoda ele não ter o Initialzr do Spring embutido 😅
@carlosync
@carlosync Год назад
@@giulianabezerra Entendi, a versão ultimate do IntelliJ já vem embutida o start do Spring, mas o importante é conteúdo né. Parabéns por compartilhar seus conhecimentos. Uma pergunta na Dataprev a principal linguagem no backend e Java né?
@giulianabezerra
@giulianabezerra Год назад
Isso mesmo, Java é bem popular nas empresas públicas.
@alexandredacunha5226
@alexandredacunha5226 Год назад
Giuliana, Primeiramente agradecer o compartilhamento de seu conhecimento. queria saber se pode um norte. Venho estudando linguagem de programação 1 ano como estrutura de dados, logica, algoritmos e estudei HTML ,CSS e JavaScript e outras coisas e fiquei perdido um pouco e já nesse ano resolvi focar em uma linguagem que foi Java. Só que parece que não consigo sair do básico , sempre volto por exemplo, como relacionar um construtor, ou coleções algo do tipo. sinto que já estudei o bastante só que na hora de executar não sai quase nada. Como faço pra evoluir como programador Java, o que realmente focar para o mercado de trabalho na parte financeira, Java, Spring, Banco de dados , mas o que aprofundar nesses assuntos ? não sei se ficou claro, mas se puder da um norte ficarei muito agradecido. tenho assistido seus vídeos e tenho aprendido bastante. abraços, fica com Deus.
@giulianabezerra
@giulianabezerra Год назад
Alexandre, obrigada pelo comentário! Pelo que você descreveu seria interessante você focar agora em prática. E com a prática vão surgindo as dúvidas sobre o que estudar. No começo é normal travar, mas a prática leva a perfeição, quando menos vc esperar, vai estar fazendo tudo quase no automático. Pra ir se familiarizando com o Spring, por exemplo, eu sugiro que vc faça as demos lá da documentação, pra ir conhecendo o framework de forma prática. Depois disso, se vc quiser um direcionamento pro mercado, resolver esses desafios de vagas de programação é uma ótima forma de se preparar. Você pode procurar os projetos no Github, tem bastante coisa por lá. E é claro, continuar acompanhando aqui o canal :)
@niltonfernandes7928
@niltonfernandes7928 15 дней назад
qual o thema que utilizas no VsCode ?
@BalderGibran
@BalderGibran 10 месяцев назад
Olá, parabéns pelo vídeo. Uma dúvida: porque não usar a anotação @Service?
@giulianabezerra
@giulianabezerra 10 месяцев назад
Eu tenho adotado a prática de centralizar as injeções numa classe config pra ter uma visão mais unificada dos componentes injetados e centralizar as anotações de framework tbm. Mas poderia usar o @service tbm, sem problemas
@goldenboy-br
@goldenboy-br Год назад
Krl aprendi coisa pra caramba , fiz uns cursos de spring e nunca tinha visto isso.
@giulianabezerra
@giulianabezerra Год назад
Que massa! Muito obrigada por compartilhar tua experiência, é muito bom saber que o conteúdo contribuiu significativamente pra vc 🤩
@edvaldonascimento4299
@edvaldonascimento4299 5 месяцев назад
Muito bom parabéns, só fiquei na dúvida na classe service por que não utilizou a annotation @Service? E preferiu configurar o bean?
@giulianabezerra
@giulianabezerra 5 месяцев назад
É uma escolha de design, costumo usar ambas abordagens, essa do config traz uma ideia de centralizar os beans de um contexto de negócio num lugar só, assim se for necessário mudar o framework de injeção, o código já estará centralizado num local
@claytons25
@claytons25 5 дней назад
Oioi! Excelente conteúdo! Parabéns!!!! Eu só fiquei com uma dúvida em relação à configuração de injeção... não bastaria somente anotar a classe de serviço com @Service?
@giulianabezerra
@giulianabezerra 4 дня назад
Sim, usar a classe de config é apenas uma forma de centralizar as injeções, mas o @Service funciona tbm
@claytons25
@claytons25 4 дня назад
​@@giulianabezerra ah sim... belezinha! Só perguntei pq fiquei na dúvida se tinha perdido algo =) Mais uma vez parabéns pelo excelente conteúdo!!
@Lima-yd3cm
@Lima-yd3cm Год назад
Gostei do vídeo, tem como fazer um desafio consumindo uma api e depois exportar os dados para o csv.
@giulianabezerra
@giulianabezerra Год назад
Hmm, isso aí tem cara de Spring Batch :D
@Lima-yd3cm
@Lima-yd3cm Год назад
@@giulianabezerra Não sei, foi um desafio de uma empresa que participei. Não consegui fazer 😔 se vc quiser o PDF pra dá uma olhada.
@johnp-dev
@johnp-dev 10 месяцев назад
Qual teclado você usa? Parabéns pelo vídeo.
@giulianabezerra
@giulianabezerra 10 месяцев назад
Tô usando um Keychron k3
@rnt802
@rnt802 9 месяцев назад
Por que configurar a injeção do repository criando um bean ao invés de usar a anotação @service na classe?
@giulianabezerra
@giulianabezerra 9 месяцев назад
É apenas uma abordagem diferente, a proposta é isolar numa única classe os componentes injetados e assim centralizar as lógicas de injeção do spring deixando os services alheios ao framework. O @service tbm é uma abordagem válida.
@JawBr
@JawBr Год назад
Olá, Giuliana, então tenho uma duvida, quando eu aprendi Spring Boot eu aprendi com 2 devs americanos Pleno/Senior e eles disseram que a Serialization/Mapping é feito na camada de serviço e que não se deve ter nenhuma logica dentro da controladora rest. Poderia explicar mais a fundo o porque você discorda ? Você falou sobre isso em 20:45
@giulianabezerra
@giulianabezerra Год назад
Ótima pergunta! De fato não deve existir regra de negócio no controller, mas mapeamento não é regra de negócio, tem relação com a API / DTO. A regra de negócio é todo o resto, ok?
@jhonathanoliveira7993
@jhonathanoliveira7993 Год назад
Seus cursos são muito bons, não tem previsão de novos cursos na Udemy ?
@giulianabezerra
@giulianabezerra Год назад
Jhonathan, estou gravando um, mas como trabalho o processo de produzir o curso é mais lento pra mim. Se Deus quiser, o curso sai esse ano! E sim, tenho planos pra vários outros, só me falta tempo mesmo :D
@pcguinho2010
@pcguinho2010 Год назад
Conteúdo muito bom! Parabéns! Porém pra mim rolou um erro de Max retries exceeded with url: ao tentar utilizar o httpie.
@giulianabezerra
@giulianabezerra Год назад
Sério? Estranho, depois testa com o curl ou outro cliente http.
@SoldierDan
@SoldierDan Год назад
Olá Giuliana, estou utilizando LocalDate ao invés de LocalDateTime, para cadastros personalizados onde só o usuário que o criou terá acesso, é uma prática aceitável nessa situação? Onde somente quem criou poderá ter acesso àquele dado?
@giulianabezerra
@giulianabezerra Год назад
Soldier, tudo bem usar LocalDate, é só evitar usar aquela API antiga com Date e Calendar.
@jesseamorim1681
@jesseamorim1681 9 месяцев назад
Oi terminei faculdade de Back-End, mas estou sem saber nada do que você fez como faço para aprender sobre APIs, deste nivel de conhecimento? Parabéns pelo conteúdo riquíssimo 🎉🎉❤
@giulianabezerra
@giulianabezerra 9 месяцев назад
Jesse, começa revisando os fundamentos do Java, tem uma playlist sobre isso no canal , depois da uma olhada no spring boot e como criar web services e finalmente tbm da uma olhada em testes, ambos os assuntos tem vídeo no canal tbm. Esse é o pontapé inicial, e aí vc vai se aprofundando criando projetos simples pra praticar. Com o tempo vai estudando novos assuntos, mas aos poucos, sob demanda. Eu vou trazer um vídeo sobre como se manter estudando e atualizado em breve aqui no canal, acredito que irá te ajudar tbm.
@jesseamorim1681
@jesseamorim1681 9 месяцев назад
@@giulianabezerra Opa meu muito obrigado já ganhou um inscrito, e estou sim vendo seus vídeos básicos de Java, quero saber pelo menos o terço que você kkkk, estou gostando muito e agradeço pelo feedback, estou antenado desde já nas suas publicações.
@boracodarcomgabrielbury1719
Top demais, Giuliana!! Notei sua preferencia em criar um configuration para o service, tem alguma vantagem nessa abordagem comparada a anotar a classe service com @Service ?
@giulianabezerra
@giulianabezerra Год назад
Excelente pergunta! A vantagem é que a gente isola os componentes com detalhes de frameworks dos nossos componentes de negócio, pois as anotações do framework serão concentradas no componente de configuração. E temos uma visão centralizada dos dados injetados pela nossa aplicação, o que pode facilitar a identificação de problemas, evoluções e análise do código.
@boracodarcomgabrielbury1719
@@giulianabezerra Fantástico! Faz completo sentido 👏🏻👏🏻 Conteúdo valiosíssimo, parabéns
@rmauto6273
@rmauto6273 5 месяцев назад
Sempre que quero rever algo de Java recorro as tuas aulas. Você e o Nélio Alves. sempre erro quando vou te procurar porque procuro por "geovana bezerra java" kkkkkk tdah ataca e nunca lembro o nome. Mas, agora não esqueço mais. Valeu, professora. Por repassar esse conteúdo pra gente.
@giulianabezerra
@giulianabezerra 5 месяцев назад
Obrigada por acompanhar aqui o canal! 🤩🙏
@avnercaleb8867
@avnercaleb8867 6 месяцев назад
Professora, ali por volta do minuto 13 do video, a classe de configuração de injeção q foi criada, e so apenas pq não foi usada a anotação @Service, no PlaceService?
@giulianabezerra
@giulianabezerra 6 месяцев назад
É uma abordagem diferente, que isola as anotações de injeção num único lugar, mas o @service tbm poderia ser usado.
@alessandro.frazao
@alessandro.frazao Год назад
Giuliana, parabens pelo conteudo! É possivel visualizar a tabela do H2 em memória via algum console?
@giulianabezerra
@giulianabezerra Год назад
Obrigada! Se for em memória os dados se perdem, seria necessário colocar uma propriedade do h2 pra usar arquivo na URL de conexão e aí daria pra habilitar o h2-console pra visualizar os dados do arquivo gerado.
@alessandro.frazao
@alessandro.frazao Год назад
@@giulianabezerra Ola Giuliana, obrigado pela resposta! Sem querer abusar muito..rsrs... É que acho interessante e didático visualizar as tabelas sendo atualizadas em tempo de execucao. Fiz a config do application.properties com os dados spring.r2dbc.url=r2dbc:h2:mem:///testdb e spring.h2.console.enabled=true spring.h2.console.path=/h2-console spring.h2.console.settings.web-port=8082. Mas parece que para o R2DBC o console não esta acessivel. Procurei informações artigos sobre... mas nada resolveu. Caso consiga nesse projeto. Por favor compartilha com a gente....please!! 😃
@giulianabezerra
@giulianabezerra Год назад
@@alessandro.frazao , sua url tá com mem, vc teria que usar uma em file jdbc:h2:file:./data/testdb. Mas além disso, o console atualmente não funciona pro r2dbc, apenas pra conexão jdbc mesmo. Vc teria que usar o H2 standalone pra funcionar, conforme descrito na documentação deles.
@tiozeraxtv9140
@tiozeraxtv9140 Год назад
Professora, é uma boa usar o webflux reactive no lugar do JpaRepos quando se trata de REST OU API ?
@tiozeraxtv9140
@tiozeraxtv9140 Год назад
É uma boa prática usar o webflux em quaisquer projetos ou apenas em projetos que demanda muita escala ? queria tirar essa dúvida, pois é comum as pessoas usarem sempre CrudRepo e JpaRepo em quaisquer projetos.
@giulianabezerra
@giulianabezerra 11 месяцев назад
Depende muito da demanda, webflux traz a ideia de escala, vc trabalha com requisições não bloqueastes pra atendê-las mais rápido, mas é uma estratégia que ainda não está super madura no Spring, então para aplicações de missão crítica é importante considerar isso. E se vc não tem problemas de performance, seguir com uma abordagem mais intuitiva (servlet) faz mais sentido.
@luisaaraujo9565
@luisaaraujo9565 Год назад
olá! é possível fazer as requisições via url ou insomnia? passei o mesmo comando 17:16 no terminal e retornou um 400.
@giulianabezerra
@giulianabezerra Год назад
Sim, Luísa! Se está dando 400 é pq deve estar passando a requisição com o corpo inválido.
@emersonbarros7905
@emersonbarros7905 Год назад
Vc pensa em fazer um treinamento de webflux de ponta a ponta ? Sua didática é ótima
@giulianabezerra
@giulianabezerra Год назад
Tenho vários planos para cursos, estou só me organizando pra gravar, o tempo é que está complicado com as questões do trabalho , atualmente estou gravando um completo de Java.
@davidrodrigues684
@davidrodrigues684 Год назад
Uma dúvida: você poderia também anotar com @Repository e @Service e usar @Autowired ao invés de usar construtor e a classe Config, certo?
@giulianabezerra
@giulianabezerra Год назад
Poderia sim, David. A ideia de uma classe config é centralizar as configurações desacoplando a sua aplicação do framework utilizado. Sem ela você teria várias anotações espalhadas pelo código, por isso gosto mais de utilizar essa abordagem.
@davidrodrigues684
@davidrodrigues684 Год назад
@@giulianabezerra entendi, interessante. Obrigado pela resposta
@RanName
@RanName 10 месяцев назад
28:16 Ao testar essa nova melhoria, minha api retornou o erro "NULL not allowed for column \"SLUG\";". Depois de quebrar a cabeça um tempo, resolvi o erro declarando o objeto slug como final. "private final Slugify slg;" Isso pode me gerar algum problema?
@giulianabezerra
@giulianabezerra 10 месяцев назад
Que estranho, mas não tem problema deixar ele final, é até melhor inclusive :)
@fernando2852
@fernando2852 Год назад
Não consegui replicar a parte de criar a requisição post usando o HTTPie
@giulianabezerra
@giulianabezerra Год назад
Fernando, dá uma revisada nos parâmetros da requisição. Se estiver usando curl lembra de checar a sintaxe do json.
@MachineHead393
@MachineHead393 10 месяцев назад
Desafio realizado em .NET!
@giulianabezerra
@giulianabezerra 10 месяцев назад
Boa!
@guihmatos311
@guihmatos311 7 месяцев назад
eu entendo essa maneira de criar as pastas, mas e se eu tiver 10 classes? subentende que eu vou ter 1 service e 1 repository pra cada um. Nesse caso o package domain vai ficar muito bagunçado, concorda?
@guihmatos311
@guihmatos311 7 месяцев назад
Excelente aula, só me surgiu essa dúvida
@giulianabezerra
@giulianabezerra 7 месяцев назад
Exatamente, concordo, nesse caso vale a pena dividir pra deixar mais organizado
@soldado25461
@soldado25461 Год назад
Parabéns pelo conteúdo e didática. Dá de 10 x 0 nos cursos da Udemy.
@giulianabezerra
@giulianabezerra Год назад
Vlwzão pelo apoio! 🤩
@MachineHead393
@MachineHead393 Год назад
Só vou deixar o IntelliJ IDEA. Me da um nervoso ver java no vs.code não sei pq. kkkkkkkk
@giulianabezerra
@giulianabezerra Год назад
Kkkk, use a IDE que for mais produtiva 😉
@MachineHead393
@MachineHead393 Год назад
@@giulianabezerra Mas o é vs.code mais produtivo que o IntelliJ pra java?
@giulianabezerra
@giulianabezerra Год назад
@@MachineHead393 , a que for mais produtiva pra vc, produtividade é algo relativo, como eu programo js tbm acho mais prático ficar no vscode.
@mateusfonseca988
@mateusfonseca988 10 месяцев назад
Em outros desafios, eu viv vc usar @Autowired para injetar as dependencias, qual a diferença? se um service utiliza somente uma dependendia que neste caso é "PlaceRepository", porque nao usar somente o @Autowired? Obrigado!
@giulianabezerra
@giulianabezerra 10 месяцев назад
A injeção recomendada pelo spring é a via construtor, a injeção via atributos vem sendo desaconselhada por vários motivos, ainda vou trazer um vídeo de batalha entre essas duas estratégias. No caso da injeção via construtor, o autowired não é necessário.
@DavidMateusReis
@DavidMateusReis Год назад
No meu caso não tive sucesso depois de usar o comando ./mvnw spring-boot:build-image, deu um erro quase no final do processo [ERROR] Failed to execute goal org.springframework.boot:spring-boot-maven-plugin:3.1.1:build-image (default-cli) on project place-service: Execution default-cli of goal org.springframework.boot:spring-boot-maven-plugin:3.1.1:build-image failed: Builder lifecycle 'creator' failed with status code 51 -> [Help 1] Alguma sugestão? Obrigado pelo ótimo trabalho!
@giulianabezerra
@giulianabezerra Год назад
David, lembra que tem que ter o docker instalado e rodando pra funcionar. Testa executar uma imagem qualquer via Docker pra ver se ele está configurado certinho na tua máquina ;)
@DavidMateusReis
@DavidMateusReis Год назад
​@@giulianabezerra está tudo certo com o Docker, imagino que seja algo relacionado ao plugin que cria a imagem, pelo que andei lendo também pode estar relacionado a certificados, pois no log mostra algumas falhas de download. Com o Dockerfile e plugin do Docker do VSCode eu consegui normalmente.
Далее
Desafio Vagas: API de tarefas com Spring Boot!
39:33
Просмотров 24 тыс.
Picpay simplificado com Java e Spring Boot!
1:09:08
Просмотров 35 тыс.
ВОТ ЧТО МЫ КУПИЛИ НА ALIEXPRESS
09:35
Просмотров 475 тыс.
Finger Heart - Fancy Refill (Inside Out Animation)
00:30
WHAT IS A RESTful API IN PRACTICE? RICHARDSON MATURITY
13:13
Spring Boot Tutorial | Full In-depth Course
3:11:18
Просмотров 524 тыс.
Destravando a lógica de programação!
12:00
Просмотров 4,7 тыс.
Respondendo questões polêmicas sobre TI
18:16
Просмотров 4,1 тыс.
APRENDA ANGULAR DO ZERO - primeiro passos
2:50:55
Просмотров 121 тыс.
Introdução à Mensageria com Spring e Kafka
19:10
Просмотров 9 тыс.
Худшие кожаные чехлы для iPhone
1:00
АЙФОН Г0ВН0
0:54
Просмотров 1,3 млн
#engineering #diy #amazing #electronic #fyp
0:59
Просмотров 2,3 млн