Spring I/O
Spring I/O
  • Видео 322
  • Просмотров 1 734 104
Spring Cloud AWS 3 upgrade and customisation for over 100 teams at Ocado Technology by M. Telepchuk
Spring I/O 2024 - 30-31 May, Barcelona
Speaker: Maksym Telepchuk
Modular libraries that leverage Spring Cloud AWS for more than 120 teams and 420 production applications make their integration with AWS and company-specific integrations easier. Spring Cloud AWS provides a convenient way to interact with AWS using well-known Spring idioms and API. Our libraries help integrate company-specific extensions on top of it in a seamless way.
Centralised upgrades and customisation mechanisms of Spring Cloud AWS at such a large scale benefit our users and also bring exciting challenges for us, the engineering team that manages these processes. In this session, we will cover some important aspects that ...
Просмотров: 258

Видео

Java meets TypeScript: full-stack web app development with Spring Boot and React by Marcus Hellberg
Просмотров 2,7 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona As Java developers, we know the benefits of type-safety when building apps. The problem? Usually, that type-safety ends when we leave the server. What if it didn’t have to be that way? In this presentation, you’ll learn how to build a full-stack reactive web app through live code examples. We’ll use Spring Boot and Java on the backend and React with TypeSc...
Concerto for Java and AI - Building Production-Ready LLM Applications by Thomas Vitale @ Spring I/O
Просмотров 335День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: speakerdeck.com/thomasvitale/concerto-for-java-and-ai-building-production-ready-llm-applications Repo: github.com/ThomasVitale/concerto-for-java-and-ai Spring AI Examples: github.com/ThomasVitale/llm-apps-java-spring-ai Imagine you’re a music composer struggling to find inspiration for a pivotal movie scene. Then, you remember you’re also a softwar...
Improve developer experience with Spring Interface Clients by Olga Maciaszek-Sharma @ Spring I/O 24
Просмотров 1,1 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: speakerdeck.com/olgamaciaszek/o-2024 Repo: github.com/OlgaMaciaszek/interface-clients-spring-io-2024-demo Spring now allows you to easily create elegant, highly readable, interface-based HTTP and RSocket clients. In this session we will discuss how developers can best use the clients in their applications to make HTTP and RSocket communication seam...
A Spring Developers Guide to Navigating the Frontend Landscape by Dan Vega @ Spring I/O 2024
Просмотров 1,1 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: 2024.springio.net/slides/a-spring-developers-guide-to-navigating-the-frontend-landscape-springio24.pdf This is a beginner-friendly session designed for Spring developers who are trying to navigate the landscape of frontend development. When you need to develop a new frontend for your Spring application, what approach do you take? Do you leverage yo...
Secure, Test, Repeat: A Guide to Spring Security Integration Testing by Laurentiu Spilca @ Spring IO
Просмотров 602День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: 2024.springio.net/slides/secure-test-repeat-a-guide-to-spring-security-integration-testing-springio24.pdf In this talk, I’ll dive into the essential aspects of integration testing within the Spring Security framework. I will share practical strategies and advanced techniques to effectively test security features in Spring applications, ensuring the...
Make Coding Fun with Spring and Azure by Adib Saikali / Asir Selvasingh @ Spring I/O 2024
Просмотров 178День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: 1drv.ms/p/s!AqMtqX6qs5wlrb1TxNo7yTSynqDWEQ Repos: aka.ms/fitness-store - aka.ms/spring-azure-fun Come see the ultimate way to combine Spring and Azure to make coding a blast! They are both amazing on their own. Put them together and you get developers who are over the moon, making cool apps that people love. However, navigating the vastness of Spri...
IntelliJ IDEA Tips and Tricks for Spring Developers by Anton Arhipov @ Spring I/O 2024
Просмотров 1,4 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona IntelliJ IDEA is packed with useful features that enhance developer productivity and simplify working with the code. This session takes you through the cool features of IntelliJ IDEA: refactorings, shortcuts, fast navigation, code completion kung-fu, live templates, structured search, dependency matrix, and other productivity tips and tricks that the IDE p...
The Spring Data Cookbook - Delicious Recipes For Fast, Secure Data by Christoph Strobl @ Spring I/O
Просмотров 3,4 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: speakerdeck.com/christophstrobl/spring-data-cookbook No matter if you have just discovered your passion for cooking or are already an advanced chef, in this session we discover ways to bake applications that deliver everything from persistence to web using your favorite ingredients. Let us explore classic data repository recipes and introduce fresh...
The Modern Monolith, with Spring Modulith by Cora Iberkleid @ Spring I/O 2024
Просмотров 3,8 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona In the last decade, much emphasis has been placed on decomposing monoliths into microservices. While this practice has important benefits, including increased agility for development teams and independent lifecycle management for applications, it also introduces new complexities, such as managing many git repositories and many component deployments. In som...
Spring Boot on the Edge by DaShaun Carter @ Spring I/O 2024
Просмотров 1,2 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Imagine deploying microservices to low-powered, distributed devices at the network edge. This talk dives into building and deploying cloud-native, kubernetes-native, enterprise-grade, production-ready applications, to the edge, with Spring Boot. WHAT YOU’LL LEARN: Harnessing the power of Spring Boot and GraalVM: Discover how AOT processing with GraalVM can...
The Future of Java Performance in Serverless: Native Java, CRaC and Project Leydens @ Spring I/O 24
Просмотров 1,7 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Speakers: Dan Dobrin / Abdel Sghiouar Slides: 2024.springio.net/slides/the-future-of-java-performance-in-serverless-native-java-crac-and-project-leyden-springio24.pdf Repo: github.com/GoogleCloudPlatform/serverless-production-readiness-java-gcp/tree/main/services/quotes Applications typically run better on serverless platforms if they start fast, with inst...
Fun with Feature Flags by Wim Creuwels @ Spring I/O 2024
Просмотров 3,3 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: speakerdeck.com/wimcreuwels/fun-with-feature-flags. Repos: github.com/LewisMcReu/FFF_Unleash_backend github.com/LewisMcReu/FFF_Unleash_frontend github.com/LewisMcReu/FFF_Togglz_backend github.com/LewisMcReu/FFF_Togglz_frontend A dive into the possibilities of feature flags in Spring. The feature flag/toggle is a simple concept that I have nonethele...
Cracking the Code Review: from Guesswork to Automated Guidance by Paco van Beckhoven @ Spring I/O 24
Просмотров 1,6 тыс.День назад
Spring I/O 2024 - 30-31 May, Barcelona Slides: www.slideshare.net/slideshow/cracking-the-code-review-at-springio-2024/269479679 Code reviews are vital for ensuring good code quality and fostering teamwork. They serve as one of our last lines of defense against bugs and subpar code reaching production. Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback...
Spring I/O 2024 - Highlights
Просмотров 907День назад
Spring I/O 2024 - 30-31 May, Barcelona Save the date for Spring I/O 2025: 21-23 May
Advanced Kotlin Techniques for Spring Developers by Pasha Finkelshteyn @ Spring I/O 2024
Просмотров 1,7 тыс.День назад
Advanced Kotlin Techniques for Spring Developers by Pasha Finkelshteyn @ Spring I/O 2024
Implementing Domain Driven Design with Spring by Maciej Walkowiak @ Spring I/O 2024
Просмотров 11 тыс.День назад
Implementing Domain Driven Design with Spring by Maciej Walkowiak @ Spring I/O 2024
Efficient containers with Spring Boot 3, Java 21 and CDS by Sébastien Deleuze @ Spring I/O 2024
Просмотров 6 тыс.2 дня назад
Efficient containers with Spring Boot 3, Java 21 and CDS by Sébastien Deleuze @ Spring I/O 2024
Event-driven autoscaling for Serverless Java by Daniel Oh @ Spring I/O 2024
Просмотров 1,9 тыс.14 дней назад
Event-driven autoscaling for Serverless Java by Daniel Oh @ Spring I/O 2024
A Passwordless Future! Passkeys for Spring Developers by Deepu K Sasidharan @ Spring I/O 2024
Просмотров 3,1 тыс.14 дней назад
A Passwordless Future! Passkeys for Spring Developers by Deepu K Sasidharan @ Spring I/O 2024
The developer's guide to making money in the open-source galaxy by Ronald Dehuysser @ Spring I/O 24
Просмотров 2,2 тыс.14 дней назад
The developer's guide to making money in the open-source galaxy by Ronald Dehuysser @ Spring I/O 24
Spring Framework 6.2: Core Container Revisited by Juergen Hoeller @ Spring I/O 2024
Просмотров 4,2 тыс.14 дней назад
Spring Framework 6.2: Core Container Revisited by Juergen Hoeller @ Spring I/O 2024
Lean Spring Boot Applications for The Cloud by Patrick Baumgartner @ Spring I/O 2024
Просмотров 4,2 тыс.14 дней назад
Lean Spring Boot Applications for The Cloud by Patrick Baumgartner @ Spring I/O 2024
Distributed Scheduling with Spring Boot: the challenges & pitfalls of implementing a background job
Просмотров 8 тыс.14 дней назад
Distributed Scheduling with Spring Boot: the challenges & pitfalls of implementing a background job
Bootiful Spring Boot 3.x by Josh Long @ Spring I/O 2024
Просмотров 17 тыс.14 дней назад
Bootiful Spring Boot 3.x by Josh Long @ Spring I/O 2024
Automated software refactoring with OpenRewrite and Generative AI by Tim te Beek @ Spring I/O 2024
Просмотров 1,7 тыс.14 дней назад
Automated software refactoring with OpenRewrite and Generative AI by Tim te Beek @ Spring I/O 2024
Build faster persistence layers with Spring Data JPA 3 by Thorben Janssen @ Spring I/O 2024
Просмотров 10 тыс.14 дней назад
Build faster persistence layers with Spring Data JPA 3 by Thorben Janssen @ Spring I/O 2024
Going AOT: Everything you need to know about GraalVM for Java applications by Alina Yurenko SpringIO
Просмотров 2,7 тыс.14 дней назад
Going AOT: Everything you need to know about GraalVM for Java applications by Alina Yurenko SpringIO
Creating Future-Proof Spring Applications with Event Sourcing by Steve Pember @ Spring I/O 2024
Просмотров 5 тыс.14 дней назад
Creating Future-Proof Spring Applications with Event Sourcing by Steve Pember @ Spring I/O 2024
Migrating from (Spring Data) JPA to Spring Data JDBC by Jens Schauder @ Spring I/O 2024
Просмотров 8 тыс.14 дней назад
Migrating from (Spring Data) JPA to Spring Data JDBC by Jens Schauder @ Spring I/O 2024

Комментарии

  • @hangar18k
    @hangar18k День назад

    very impressive, but Vaadin...

  • @nkomanyaotoman3599
    @nkomanyaotoman3599 День назад

    This is just amazing! I love it

  • @dnbhatia85
    @dnbhatia85 День назад

    We used retrofit client which is completed annotated interface has configuration in properties files and it does not need any implementation.

  • @glasskaar
    @glasskaar День назад

    Looks really cool! Would it work with kotlin and ktor or is it java + spring boot only?

  • @ashishkarn9283
    @ashishkarn9283 День назад

    Wow.. This is amazing.

  • @cviniciusm
    @cviniciusm День назад

    I disagree, I see developers having difficulties with a single stack of development, to follow its evolution, much worse trying to follow the evolution of several stacks. More old are you then less time to study and research.

    • @ooijaz6063
      @ooijaz6063 День назад

      I mean, have you seen any non-hello-world project that uses only 1 technology? Usually it's a tech stack - combination of few frameworks / libraries / languages often with few apps, where some of them may be legacy on older versions and are nearly "readonly". That's the reality that I've seen so far.

  • @dinaelmiranda2585
    @dinaelmiranda2585 День назад

    I've never found a way to view groups of projects separately. That is, I'm working with projects from Group1 - P1, P2, P3, now I would like to work only with projects from Group2-P4, P5, P6). I would like to switch between them like in other IDE's

  • @akashkarmakar5798
    @akashkarmakar5798 День назад

    This thing is best bro. You guys have any intention of RSC support??

  • @aral7064
    @aral7064 День назад

    Hell, I like "verbosity" of old UI

  • @abdulrenishr
    @abdulrenishr День назад

    Waiting for ...open feign🎉

    • @otwock2
      @otwock2 День назад

      It's obsolete now. Use... Spring Interface Clients.

  • @hugostos09
    @hugostos09 День назад

    smooth

  • @rodjenihm
    @rodjenihm День назад

    Speaking about front end, It would be nice if Spring team is able to allocate the time and resources to implement InertiaJS adapter for Spring.

  • @theritesh973
    @theritesh973 День назад

    Nice Talk👏

  • @rodjenihm
    @rodjenihm День назад

    "Key Promoter X" is also very good plugin. It will tell you the exact shortcut for an action you performed using the mouse.

  • @YZ-ix3dn
    @YZ-ix3dn День назад

    I feel this approach a bit confusing especially when you pass repository into the domain entity. What can be more straightforward than having 3 main layers (Controller, Services, Repositories). In real life scenarios, there might be a lot of communication with different systems, so putting all that logic in service layer looks more reasonable for me. And basically these UseCase classes could be in fact small granular services e.g. AddBookToCatalogService.

  • @Nick-yd3rc
    @Nick-yd3rc День назад

    An amazing talk, thank you. Yes the bbq pics were a bit distracting through novelty and perplexity but I did manage to just think of array box representation instead. But the content is great. It’s always good to have a JPA refresher. 🎉

  • @TwoTeaTee
    @TwoTeaTee День назад

    He's the right trainer for my Brain at gym.

  • @xdeama
    @xdeama 2 дня назад

    I don’t get why people hate Spring Security. Whenever I learn a new language, I wish it had something close to Spring Security.

  • @marceloguzman2848
    @marceloguzman2848 2 дня назад

    nice presentation, mr. homelander

  • @roman-proshin
    @roman-proshin 2 дня назад

    That's actually a really nice presentation! Thank you very much! I like the examples and how they are structured. To be honest, even after working for many years with Spring and Spring Boot, I wasn't aware of some of these hints provided by Christoph!

  • @edburns00
    @edburns00 2 дня назад

    Great to see at 08:43 that Spring will take up EE 11 APIs!

  • @hirenpandit8499
    @hirenpandit8499 2 дня назад

    Great talk!! so much learnings and addressed real life problems I faced while writing background scheduled jobs... btw we used ShedLock library but this is real good insight.

    • @RafaelPonte
      @RafaelPonte 2 дня назад

      Thanks! Nice you liked it!! 😊 By the way, ShedLock is a very cool library! 👊🏻

  • @IvanRandomDude
    @IvanRandomDude 2 дня назад

    Ah, yet another Order and LineItems example. Very creative from Spring experts in this year's Spring I/O.

  • @EliasX962
    @EliasX962 2 дня назад

    top talk!

  • @abccbaandy
    @abccbaandy 3 дня назад

    Great talk, but still don't see any chance to use this in real world biz logic. For example: It do valid in domain object, but what if I got a new requirement that I need bypass or add some valid in some biz logic? It seems hard to do this new task. Instead, with old school POJO way, it's easy.

  • @SaikatSengupta
    @SaikatSengupta 3 дня назад

  • @GodwinTionsha
    @GodwinTionsha 4 дня назад

    Wao! What a great presentation, thank you Ivar Grimstad.

  • @scwan-ew8uh
    @scwan-ew8uh 4 дня назад

    Great

  • @adityaanand97
    @adityaanand97 4 дня назад

    This might looks fancy but In my work experience, this way of modeling microservice is worst thing you can do in fast developing world. I want my developers to get features out as fast as possible with proper testing. I don't want them to waste time in managing packages. controller, service, entities, repositories, util, helper. with No shitty one interface, one class thing. just keep it simple !! You are not gonna need it.

  • @elsaigneur
    @elsaigneur 4 дня назад

    It's a lot of tricks to implement to make Java performs well in Serverless context. Rust ?

  • @ajs9721
    @ajs9721 5 дней назад

    Sorry people, but the presenter has thought about a pattern to get the point across, it may or may not be what your expectation of a perfect presentation is. But still good to give some polite feedback. Thanks for presenting and making it available for us. Some really good takeaways..

  • @eduardo120155
    @eduardo120155 5 дней назад

    Congratulations on your presentation! You absolutely nailed it. Your thorough research and confident delivery captivated everyone in the room. Your ability to explain complex ideas so clearly is truly impressive. Keep up the fantastic work!

    • @RafaelPonte
      @RafaelPonte 5 дней назад

      Thanks for the kind words, Eduardo! ❤

  • @alexsmart2612
    @alexsmart2612 5 дней назад

    Some of the slides in this talk were downright terrible. Like, the whole BBQ section. Why would you fill your slides with 100% irrelevant BS instead of a single example or interface definition? How does the viewer actually implement any of the ideas mentioned there using Spring Data? I presume typing the name of skewer in my IDE would not work. I get the idea of trying to give a fun theme to your talk, but don't let that fun be at the expense of the viewer.

  • @simonbassey2607
    @simonbassey2607 5 дней назад

    Quite interesting talk .. excited

  • @AgroTuna
    @AgroTuna 5 дней назад

    I migrated a medium sized project to spring data jdbc and was impressed by how straightforward it was. Sure there were some things that had to be changed, ran into a few footguns along the way, but in the end it simplified the code and opened my eyes to all of the "magic" that was happening behind the scenes in the JPA implementation.

  •  5 дней назад

    Great Job Cora Iberkleid, very nice presentation. Even though the IDE has given you a hard time, you've handled it very well.

  • @nuclearscissors
    @nuclearscissors 5 дней назад

    I'm a simple man. I see Josh Long, I click the video

  • @rahuljoshi456
    @rahuljoshi456 5 дней назад

    Can it work in distributed deployment? Like EKS.

    • @ShivamNagpal
      @ShivamNagpal 5 дней назад

      Yes it works. Are you asking about multiple pods of same service or different services using the same Unleash instance?

    • @rahuljoshi456
      @rahuljoshi456 4 дня назад

      @@ShivamNagpal Multiple pods of same service. Can you share any reference?

  • @kennethcarvalho3684
    @kennethcarvalho3684 5 дней назад

    Great presentation and confidence

  • @TechTalksWeekly
    @TechTalksWeekly 5 дней назад

    This talks is excellent and it has been featured in the last issue of Tech Talks Weekly newsletter 🎉 Congrats Maciej!

  • @xmicore
    @xmicore 6 дней назад

    simply schauderhaft

  • @user-un1um2vf3y
    @user-un1um2vf3y 6 дней назад

    what's the difference between reading and writing with a rabbit or kafka and reading and writing with a database? Usually i'm using REDIS for solve same problem, because it much faster than usual relation db

    • @RafaelPonte
      @RafaelPonte 5 дней назад

      Thanks for the comment. I will ignore the trade-offs of having a new component in the infrastructure now and focus only on the developer's perspective. There are differences, but how they can impact your solution depends on your context. I mean, using Kafka or RabbitMQ in the talk's job perspective may have little difference on the job's code, but in the application perspective, which produces events in the queue, we may have to deal with a dual write issue. The same is true for Redis: it depends on how you're using it, such as a distributed lock provider or a message queue.

  • @MrVitalirapalis
    @MrVitalirapalis 6 дней назад

    I did not understand how the openApi spec was combined and created on gateway side, i understood that the routes are configured on the fly. Could someone answer my question?

  • @MrVitalirapalis
    @MrVitalirapalis 6 дней назад

    why the edpoints could be private?

  • @voult89
    @voult89 6 дней назад

    In my opinion, the domain shouldn't know anything about how the entity will be saved, updated or whatever, and where it would happen. For the domain it should be an abstraction. For example, you can decide not to use JPA, and use JDBC instead. And if you're designed your application correctly, you won't change anything in domain module, you won't even recompile it, and only persistence module will be changed. And modulith only help you design you monolith application, not microservice with DDD. But gradle can, since for each module (presentation, persistence, use cases, domain) you can set it's own dependencies. And, for example, domain will never depend on use cases, and you can even write tests for that. And you don't even need to recompile inner modules, when you change anything in outer modules.

    • @rolandjost3823
      @rolandjost3823 5 дней назад

      Indeed, your vision or your approach is correct. In addition, I noticed that there are two architectural approaches to doing DDD. Obviously the one you described above, and the one he presents in his talk based on Spring Data JDBC (AggregateRoot) using JPA annotations. Your approach is ideal since it avoids a decoupling between the business domain and the infrastructure layer, however it requires a lot of DTO. In short, note that the DDD approach is a free approach, since it is based on a set of good practices (TDD, BDD, CLEAN ARCHI and others). But does not define any specific architecture. Personally I recommend using the one that will allow you to deliver your software faster

    • @FernandoDBozzo
      @FernandoDBozzo 2 дня назад

      @@rolandjost3823 Fast Delivery in this way normally implies slowing maintenance in the future. I don't know if everything is valid just for Fast Delivery...

  • @avalagum7957
    @avalagum7957 6 дней назад

    record BookId(UUID) record ISBN(String) .... These wrappers create more tasks for the GC. I'm waiting for the day when the Java compiler supports new type/opaque type like the Scala compiler (i.e. we still have BookId and ISBN but the compiler will remove them while still keeping all the validations inside them).

  • @YuliSlabko
    @YuliSlabko 6 дней назад

    Nice explanation! But did not cover very important case if your app has more than one job marked with @Scheduled annotation. Because it may be crucial moment of performance. May be it will be covered in next topics.

    • @RafaelPonte
      @RafaelPonte 6 дней назад

      Thanks for the comment 😊 Nice you liked it! I am not sure if I understood what you mean. Usually, a single application has multiple @Scheduled jobs running concurrently doing different things (sometimes at other times). Could you give more details?

    • @YuliSlabko
      @YuliSlabko 6 дней назад

      @@RafaelPonte If you do not specify in application.yml thread pool size for scheduler explicitly all jobs will be operated by one single thread.

    • @RafaelPonte
      @RafaelPonte 5 дней назад

      ​@@YuliSlabko Thanks for the explanation. Now I got your point! ☺ You're right. If your application runs multiple jobs close together or jobs that take too long to finish, tuning the Scheduler's thread pool size is essential. 👊🏻

  • @metrocartao
    @metrocartao 7 дней назад

    Muito bom!

    • @RafaelPonte
      @RafaelPonte 7 дней назад

      que massa que gostou 😊

  • @mohammadtoficmohammad3594
    @mohammadtoficmohammad3594 7 дней назад

    Thank you very useful

  • @msr00001
    @msr00001 7 дней назад

    Great example. I have continually searched for how to use Spring JPA in conjunction with DDD, however, I always felt like I was encountering too many violations. Your approach manages to keep those to a minimum so I will certainly reference this demo moving forward.