SPRING BOOT + API REST + JPA + QUERY METHOD + DTO

Link a la fuente oficial: docs.spring.io/spring-data/jp...

Пікірлер: 88

  • @FabricioW69
    @FabricioW6918 күн бұрын

    En verdad, solo me queda expresar mi total admiración por la forma de explicar y enseñar, he visto infinidad de videos y nadie explica como tú, en 38 minutos aproximadamente, hiciste lo que otros hacen en horas y horas de explicaciones vacías. En verdad excelente explicación de todo, muchas gracias por compartir tu conocimiento.

  • @davidikingarisolorzanovill6483
    @davidikingarisolorzanovill648310 ай бұрын

    Empezó muy bien, y terminó Mejor, la explicación de los DTO es muy clara y me ayuda bastante para lo que estoy trabajando actualmente.

  • @juancamiloarenasflorez8841
    @juancamiloarenasflorez884110 күн бұрын

    Muchas gracias, en verdad he aprendido bastante contigo!

  • @sebastianacosta4677
    @sebastianacosta4677 Жыл бұрын

    Excelente explicacion, Se nota la practicidad en querer mostrar lo que se busca primero con graficos y luego con codigo. Ese es el tip para entender bien el flujo de lo que se busca. Excente Trabajo

  • @agustindolimpio
    @agustindolimpio Жыл бұрын

    Buenisimo video, Justo lo que estaba buscando! Muchas gracias

  • @letoniel006
    @letoniel0069 ай бұрын

    Quiero darte las gracias porque explicas muy bien y el apoyo visual que muestras para las explicaciones hace que se entiendan mejor los conceptos.

  • @putos00769
    @putos00769 Жыл бұрын

    Que manera de explicar. Me pareció muy claro y directo. Espero no deje de subir videos. Un excelente trabajo. Saludos desde México.

  • @andresmarolt7510
    @andresmarolt751010 ай бұрын

    Excelente contenido! Estoy arrancando con Spring Boot y tus videos me están ayudando un montón. Gracias!

  • @user-dl3zh4ws1q
    @user-dl3zh4ws1q Жыл бұрын

    Vaya vaya, felicidades por explicar esto, muchos se ponen a hacer vídeos de crud pero no explican todo esto 🙌🙌🙌, muchas gracias y enhorabuena

  • @springprogramming
    @springprogramming8 ай бұрын

    Genial explicación, todo comprendido a la perfección.

  • @alanalbertoromerotapia6769
    @alanalbertoromerotapia6769 Жыл бұрын

    Muy buena al explicar, gracias !

  • @federicomelo1293
    @federicomelo1293 Жыл бұрын

    Excelente video, muy completo

  • @emmanuelcajasballesteros6409
    @emmanuelcajasballesteros6409 Жыл бұрын

    gracias por la explicaxion, muy claro todo

  • @TecnoTubeTutorials
    @TecnoTubeTutorials3 ай бұрын

    Excelente calidad de tus tutoriales!

  • @alejocastle2796
    @alejocastle27962 ай бұрын

    WOW!!! Muchas gracias por compartir tus conocimientos!!! de todo corazón muchas gracias!!!

  • @fredysanabria4417
    @fredysanabria44174 ай бұрын

    Me quito el sombrero, a este momento la mejor explicación y detalle en una arquitectura y ensamble que haya visto en SB. Mil gracias por tu valioso video

  • @irojascorsico

    @irojascorsico

    4 ай бұрын

    Muchas gracias!!

  • @sebastianignaciosantillan2454
    @sebastianignaciosantillan2454 Жыл бұрын

    tenia un monton de huecos faltante de informacion y me aclaraste la mayoria. te ganaste un sub. gracias y alli va el link y la compartida a mis compañeros

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Gracias Sebas! Me alegro que el video te sea de utilidad. Abrazo!

  • @sebastianacosta4677
    @sebastianacosta4677 Жыл бұрын

    Has ganado un nuevo Subscriptor

  • @juandiegochoccnagarcia5686
    @juandiegochoccnagarcia5686 Жыл бұрын

    Muchas Gracias Ivana , queremos más tutoriales con Spring Boot

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Próximamente!

  • @elvisalmonte3060
    @elvisalmonte3060 Жыл бұрын

    Gracias profesora, los temas son muy bien explicados!!!

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Muchas Gracias!!

  • @KimMiHee
    @KimMiHee Жыл бұрын

    gracias ivana te quiero mucho

  • @mayorajesus182
    @mayorajesus18210 ай бұрын

    Muchas gracias!!. Explicas muy bien .

  • @irojascorsico

    @irojascorsico

    8 ай бұрын

    Hola, muchas gracias

  • @noel1711
    @noel17116 ай бұрын

    Wow Ivana porque no descubrí tu canal hace tiempo ;) . Excelente canal y la mejor explicación.

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Muchísimas gracias @noel1711. Abrazo!

  • @cintianecol4968
    @cintianecol4968 Жыл бұрын

    Muchas gracias Profe!!! Es de mucha ayuda el video. Espero llegar a tiempo para presentar el portfolio el 15 de Enero

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Vas a llegar!! No dudes en escribirme si tienes consultas.

  • @fabianmerar.3572
    @fabianmerar.3572 Жыл бұрын

    Excelente video :)

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Gracias!

  • @Julian-yv1fq
    @Julian-yv1fq11 ай бұрын

    excelente video :D

  • @BrattScorsa
    @BrattScorsa Жыл бұрын

    Muy buen tutorial. FELICITACIONES!!!!!!!!!!!!!!!!!!!!

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Muchas gracias!

  • @rodrigoalave9323
    @rodrigoalave93236 ай бұрын

    Excelente explicacion, muchas gracias.

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Gracias a ti

  • @LorenRuizG
    @LorenRuizG18 күн бұрын

    Da gusto como se explica

  • @nestor-162
    @nestor-1624 ай бұрын

    Excelente video, me aclaró mucho las ideas. Antes de ver el video, todos estos conceptos se me mezclaban y me generaban confusión. Gracias

  • @irojascorsico

    @irojascorsico

    4 ай бұрын

    Genial!!

  • @HackZ2266
    @HackZ22665 ай бұрын

    excelente explicacion!!!

  • @irojascorsico

    @irojascorsico

    5 ай бұрын

    Hola, muchas gracias!!

  • @AtomWR1
    @AtomWR110 ай бұрын

    Excelente! DTO en 29:40

  • @sabrinatecherasosa
    @sabrinatecherasosa10 ай бұрын

    muy bueno asi lo usamos en el trabajo real

  • @adcmo9ifly
    @adcmo9ifly8 ай бұрын

    Gracias ❤

  • @irojascorsico

    @irojascorsico

    8 ай бұрын

    De nada 😊

  • @todounpoco1611
    @todounpoco161124 күн бұрын

    Eres mas grande wue messi muchas gracias

  • @jedionmelbin
    @jedionmelbin3 ай бұрын

    Buenas tardes, puedes hacer tutoriales authenticacion con spring de back end, front angular ocid google, apple

  • @trianagonzalez5077
    @trianagonzalez50775 ай бұрын

    Buenas tardes Profesora, primero que todo felicitarla, su clases es muy clara, y me ha ayudado mucho, me gustaría consultarle si realiza clases particulares a distancia, me gustaría aprender más de spring boot.

  • @irojascorsico

    @irojascorsico

    4 ай бұрын

    @trianagonzalez5077 gracias por tus comentarios. Por el momento no realizo clases particulares a distancia pero puedes hacer las consutlas que necesites y en la medida que puedo voy respondiendo. Si tengo pensado diseñar un curso para hacer con clases en vivo en algún momento... pero está bastante verde por ahora. Abrazo!

  • @nicolasgarcia253
    @nicolasgarcia2532 ай бұрын

    Hola Ivana que tal, me gustaria hacer una consulta, con respecto a los repositorios. En algunos casos, se crean interfaces extras al repositorio que extiende de Jpa por ej, en donde se declaran metodos que tengan que ver con la logica, como por ejemplo el Login. Estaria mal tener los metodos relacionados al crud en la interfaz que extendes de Jpa, pero tambien tener una interfaz donde declaras metodos solo relacionados a la logica del negocio? Y en todo caso, esta bien implementar los metodos de la logica del negocio en la misma donde implementas los cruds, es decir, la que extiende de Jpa?

  • @estivenliscano4820
    @estivenliscano48204 ай бұрын

    que nivel de video

  • @diegotoselli235
    @diegotoselli235 Жыл бұрын

    Hola Ivana muchas gracias por tus videos, es muy clara tu manera de explicar. Quería hacerte una consulta, cuales son las dependencias utilizadas en el proyecto de ejemplo y si la empaquetación fue WAR o JAR. Quiero realizarlo con la herramienta Spring Initializr y seguir toda la explicación del video

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Hola Diego, te dependencias utilizadas son: Spring Web, Spring Data JPA, MySQL Driver, Lombok y Spring Boot DevTools. El packaging con el que trabajé es JAR. Saludos, Ivana

  • @luisgonzales9937
    @luisgonzales993717 күн бұрын

    que tema de apariencia usas, me gusta

  • @carlosengui9645
    @carlosengui96453 ай бұрын

    Buenas tardes, Enhorabuena por tu canal y tu forma de explicar. Esto qu evaya de antemano. Por otro lado, uan pregunta tonta por mi parte, ¿Porque creas los constructores a mano si después usas lombok para crear los Getter y Setter? ¿Porque no lo hacer también con Lombok? Indiferentemente de esta pregunta, verdaderamente explicas muy bien y me ha quedado más claro que con otros canales. Tienes mi suscripción y campanita. Un saludo.

  • @irojascorsico

    @irojascorsico

    3 ай бұрын

    Hola!! Tienes razón. Ese video lo publiqué muy rápidamente porque estaba destinado a mis estudiantes haciendo foco en las apis. Abrazo!

  • @codewithomardev
    @codewithomardevАй бұрын

    Una consulta Ivana. Que libro o documentacion puedo utilizar para aprender todo esto? En especifico API REST con Spring Boot. Me descargue varios libros pero siento que es muy diferente a esto

  • @biancahoffmann2489
    @biancahoffmann24896 ай бұрын

    me gusto mucho el video, me acostumbre a hacerlo mas con dto porque asi lo hacia con typescript 🤣 tendras algun video con arquitectura limpia?

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Hola Bianca, no sé si comprendí tu consulta... un Dto es un objeto que se utiliza para transferir los datos y la arquitectura se refiere al diseño de la aplicación (en capas). Si hablamos de arquitectura limpia, hay varios puntos a tener en cuenta dependiendo el modelo de negocio que quieras desarrollar.

  • @juanmario6583
    @juanmario65838 ай бұрын

    Muy buen video muchas graciasss. Una pregunta, en caso de querer traer todos las personas en una List, despues para pasarlos a una List personaDTO debo hacer un foreach? Seria una buena practica no?

  • @irojascorsico

    @irojascorsico

    7 ай бұрын

    Hola @juanmario6583, si deseas traer un arreglo de personasDTO, un foreach quizás no sea lo más eficiente. En su lugar puedes utilizar listas genéricas, la API de Stream o bien, la librería ModelMapper link: modelmapper.org/ Abrazo!

  • @danielcardenas4879
    @danielcardenas487910 ай бұрын

    gracias jaja ando entendiendo pero siempre hago algo o me salen errores que nunca eh visto bueno cada paso aprendo mas aunque ya se me esta acabando el tiempo

  • @irojascorsico

    @irojascorsico

    9 ай бұрын

    Hola Daniel, es normal cuando estás comenzando! Verás que a medida que avanzas, obtendrás más habilidades para detectar errores y sus soluciones. Saludos,

  • @diegogigena6350
    @diegogigena63507 ай бұрын

    La estructura de las anotaciones son heredadas de : @component(service,entity, repository)? O sea en vez de ponele @service le podría poner @component no? Pero obvio service es más gráfico no?

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Exacto! Ayuda a que tu código fuente sea más limpio. Abrazo!

  • @aamb_c133
    @aamb_c1336 ай бұрын

    muchas gracias comprendí mejor como implementar los DTO Solo una pequeña consulta: Es recomendable tener los DTO en un paquete aparte?

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Hola @aamb_c133, si suele separarse en un paquete aparate por las siguientes cuestiones: - siempre es recomendable mantener separada los detalles de transferencia de datos de los detalles de persistencia. - al estar separados, los dtos pueden reusarse. - si el modelo de datos cambia, no necesariamente tendremos que modificar los dtos... es decir que, todo será igual para la app cliente. Sin embargo, en algunos casos, puede ser más conveniente mantenerlos juntos. Por ejemplo, si el DTO deriva de una entidad puede ser más fácil y eficiente mantener ambos en el mismo paquete. Esto hace el código más fácil de leer y entender. Si mantienes los DTOs en un paquete separado, tendrás que navegar constantemente entre dos paquetes diferentes, lo que puede ralentizar tu trabajo. Abrazo

  • @hebe_lia
    @hebe_lia Жыл бұрын

    hola profe, tenes algun material donde ese explicado como se realiza el login por jwt? es algo que quiero implementar pero todos los lugares que veo tienen errores

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Ok, les preparo una serie de videos frontend + backend para implementar la autenticación basada en jwt a la vuelta de mis vacaciones! Abrazo

  • @nahuel4400
    @nahuel4400 Жыл бұрын

    Hola en los controladores para que sirve la anotación @responsebody debajo de los métodos post,get,delete? No los uso y las peticiones me andan igual, es mala práctica no usarlos?

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Muy buena pregunta NAH YT!! Si bien en spring boot es recomendable utilizar la anotación @ResponseBody en el controller de una API REST para devolver la respuesta en formato JSON, no utilizar la anotación @ResponseBody no necesariamente es una mala práctica ya que, Spring Boot puede inferir la respuesta que se debe devolver en función del tipo de dato que devuelve el método. Por ejemplo, si el método devuelve un objeto, Spring Boot lo convierte automáticamente en JSON y lo envía en la respuesta. Sin embargo, es importante aclarar que, si se desea devolver una respuesta en un formato JSON personalizado quizás, en este caso probablemente necesites utilizar la anotación@ResponseBody. De lo contrario, Spring Boot puede utilizar una respuesta por defecto que no cumpla con el formato que esté esperando por ej. el frontend. Saludos

  • @nahuel4400

    @nahuel4400

    Жыл бұрын

    Gracias por responder, quedo atento y suscrito por si subís videos enseñando jwt que es algo que no encuentro videos donde pueda entender bien su funcionamiento

  • @agustindolimpio
    @agustindolimpio Жыл бұрын

    ⁠​​⁠hola profe, una pregunta, las response entities las devuelvo en los servicios o en los controladores y si es obligatorio usarlos en el mundo laboral, muchas gracias 😊

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Hola Agustín, Por lo general, las response entities se devuelven en los controladores dado que éstos son los responsables de recibir las peticiones HTTP y enviar las respuestas dado que permiten tener un mayor control sobre el formato de la respuesta que se envía al cliente. En cuanto a los servicios, éstos encapsulan la lógica de negocio de la aplicación y se encargan de interactuar con las entidades y repositorios para realizar las operaciones necesarias. Por ende, es una buena práctica que los servicios devuelvan objetos que representen el resultado de la operación realizada y luego, los controladores, pueden utilizar esta información para construir los response entities y envair la respuesta al cliente. Respecto al mundo laboral el uso de response entities en los controladores no es obligatorio, aunque es importante mencionar que son una buena práctica dado que mejoran la estructura, la legibildad del código y facilita el manejo de errores. Saludos! Ivana

  • @yeissonvl
    @yeissonvl8 ай бұрын

    porque sale publicidad de hasbro y mattel.

  • @irojascorsico

    @irojascorsico

    8 ай бұрын

    Vaya uno a saber ja.. entiendo que lo maneja youtube.

  • @rickhunter8216
    @rickhunter8216 Жыл бұрын

    PROFE, ¿OSEA EN LOS ENDPOINT DEL CONTROLADOR, LO QUE SE DEBE RETORNAR EN LOS METODOS ES EL OBJETO DTO Y NO EL OBJETO DE LA ENTIDAD?. ¿ESO ES POR BUENAS PRACTICAS?

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Hola Rick, utilizar DTOs se considera una buena práctica en muchos casos dado que: - Optimiza la transferencia de datos. Reducir la cantidad de datos a transferir en base a lo que necesita frontend o la aplicación cliente mejora el rendimiento. - Protege los objetos del dominio. Utilizar DTOs evita exponer directamente los objetos de dominio y/o las entidades de la base de datos al frontend o aplicación cliente. - Pertime un control sobre los datos transferidos. Utilizar DTOs permite omitir información sensible o innecesaria para el frontend o app cliente, como password o datos adicionales de las entidades. - Entre otras ventajas. Sin embargo, es importante también tener algunas consideraciones antes de utilizarlos como por ej.: - El uso de DTOs puede requerir la creación de clases adicionales y la implementación de mapeos entre los objetos de dominio y los DTOs. lo que puede aumentar la complejidad y el tiempo de desarrollo y mantenimiento. Por ello, es importante siempre no tomar decisiones apresuradas y evaluar el contexto del proyecto considerando los beneficios y los posibles impactos para tomar decisiones acertadas con bases fundamentadas. Abrazo! Ivana

  • @eduardogz1422

    @eduardogz1422

    3 ай бұрын

    ​@@irojascorsicoYo tengo una pregunta, cuando se usa DTO y cuando no

  • @yovanies2798
    @yovanies27986 ай бұрын

    eh hubiera sido genial que creas el proyecto desde cero y realices los paso a paso de codificar. crear los paquetes, clases, servicios, etc.

  • @irojascorsico

    @irojascorsico

    6 ай бұрын

    Hola @yovanies2798, si claro.. este fue un primer video que realicé para mis estudiantes. Puedes ver el siguiente video dónde explico la arquitectura de una API Rest (aunque con VSCode). Abrazo

  • @walterr8417
    @walterr8417 Жыл бұрын

    Hola profe, soy alumno de argentinaprograma. Estoy desde el domingo con un problema y las ayudas que recibí via el foro del grupo no pudo solucionar mi problema. El ejecutable que me genera netbeans, como así tambien el que realizo desde consola con mvnw me arroja un mensaje de error "cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [com.portfolio.SpringBoot.Application] 2023-01-14T10:43:33.445-03:00 ERROR 11324 --- [ main] o.s.boot.SpringApplication : Application run failed", con lo cual en el despliegue me dice exactamente lo mismo. Sin embargo (y ahi está lo que yo veo como raro!) el proyecto desde netbeans corre como localhost perfectamente incluso usando la DB ya desplegada. Es decir si hago el "run main project" anda perfecto.. Además del tema de los path's del setting del proyecto, del que todas las clases esten dentro del package springboot, de haber ejecutado desde consola mvnw clean, mvnw install, mvnw compile, mvnw package.. y rezar.... que mas debo hacer?

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    Hola Walter ¿pudiste resolver? - En relación a la excepción BeanDefinitionStoreException, te dejo unos links que pueden ayudarte: stackoverflow.com/questions/35070455/springboot-beandefinitionstoreexception-failed-to-parse-configuration-class y www.baeldung.com/spring-beandefinitionstoreexception Por otro lado, si estás intentando realizar el despliegue con render/docker, te invito a mirar el siguiente video: kzread.info/dash/bejne/d6yozKuTedSXc5M.html

  • @walterr8417

    @walterr8417

    Жыл бұрын

    @@irojascorsico, Hola, disculpame que no reaccione antes, pero estaba de vacaciones. La verdad no pude resolverlo y ahora me encuentro en el grupo de alumnos con la extensión de 60 días. Gracias por tus links, los voy a ver y luego te cuento. Por otro lado, gracias por compartir tan claramente tus conocimientos.

  • @walterr8417

    @walterr8417

    Жыл бұрын

    Hola Ivana, muchas gracias por tu recomendación, si bien mi caso no era el mismo problema (package) lo pude resolver. Al analizar la estructura de las carpetas y archivos, me llamó la atención que tenia muchos niveles, pero esos niveles no los veía en netbeans, hice la prueba de subir un nivel todos los archivos java con mis clases y pese a refactorizarlo el IDE me daba errores por todos lados, lo cerré, y desde consola y con maven limpie cache, reinstalé dependencias, compilé y empaqueté... ahora con java -jar target/SpringBoot-0.0.1-SNAPSHOT.jar corre perfectamente directamente de consola, con lo cual si eso lo actualizo en mi github, seguramente el despliegue del backend funcionaría.

  • @irojascorsico

    @irojascorsico

    Жыл бұрын

    @@walterr8417 Gracias por compartir cómo lo resolviste!!