JChampions Conference
JChampions Conference
  • 115
  • 158 928
A Developer's Guide to Jakarta EE 11
Since its introduction in 2018 as Jakarta EE, the platform has evolved from: Jakarta EE 8, an open-source version of Java EE 8; to Jakarta EE 9, the "big bang" release; to Jakarta EE 10 that introduced the Core Profile.
And now, Jakarta EE 11, released on { month}, { day }, 2024, focuses on productivity and innovation and delivers: updates to 16 specifications; introduces a new specification, Jakarta Data; and sets the baseline to Java 21, the latest LTS release.
This presentation will provide a brief history of JavaEE/Jakarta EE, what's new in Jakarta EE 11, and a review of new and updated specifications with working example applications.
Переглядів: 183

Відео

It Takes Two to Tango - Designing Module Interactions in Modulithic Spring ApplicationsIt Takes Two to Tango - Designing Module Interactions in Modulithic Spring Applications
It Takes Two to Tango - Designing Module Interactions in Modulithic Spring Applications
Переглядів 275Годину тому
According to Russell Ackoff “A system is not the sum of the behaviors of its parts, but the product of their interactions”. That’s why the design of those interactions is of the uttermost importance. In a Spring application, the primary means to establish relationships between application components is dependency injection (DI). With higher-level structuring approaches like Spring Modulith’s ap...
Cracking Tricky Java Code Challenges From Java 8 to Java 24Cracking Tricky Java Code Challenges From Java 8 to Java 24
Cracking Tricky Java Code Challenges From Java 8 to Java 24
Переглядів 20726 днів тому
Mastering Java fundamentals is necessary to create maintainable, bug-proof, high-quality code and advance your Java career. I've seen many experienced developers write meaningless Java code because they lack knowledge of the Java core features. They reinvent the wheel and write more complicated, confusing, and difficult-to-maintain code. Join me in this talk so you can prepare for Java intervie...
Java Developer Career Masterplan: 15 steps to grow beyond senior developerJava Developer Career Masterplan: 15 steps to grow beyond senior developer
Java Developer Career Masterplan: 15 steps to grow beyond senior developer
Переглядів 290Місяць тому
What if you could devise a clear plan for your Java developer career, to reach senior levels and beyond? What if this plan could be built with the guidance and inspiration of some of the top players in the industry? Search no more. The Developer Career Masterplan is a 15-step process to design your own masterplan. This is the exact plan used by Java Champions, Open Source developers, Developer ...
A Data-Oriented Programming Approach to REST APIsA Data-Oriented Programming Approach to REST APIs
A Data-Oriented Programming Approach to REST APIs
Переглядів 200Місяць тому
This session will use records, sealed interfaces, and pattern matching for switch to access RESTful web services. The approach takes advantage of concepts from Data-Oriented Programming like immutability, explicit data representations, and expressive behavior. At least one example will involve making text and vision requests to an AI service, and how to implement that effectively using Java 21 .
Best Practices to Secure Web ApplicationsBest Practices to Secure Web Applications
Best Practices to Secure Web Applications
Переглядів 490Місяць тому
While strong authentication and authorization lay the foundation, achieving robust web application security demands a multi-layered approach. At first glance, the field of web application security can seem daunting, but by understanding and implementing core principles, you can dramatically strengthen your defenses against cyber threats. In this presentation, we'll delve into the essential, yet...
Secrets of Performance Tuning Java on KubernetesSecrets of Performance Tuning Java on Kubernetes
Secrets of Performance Tuning Java on Kubernetes
Переглядів 350Місяць тому
Initially, getting Java to run on Kubernetes may seem complicated, but after a few lines of YAML and a bit of work with Docker, you will wonder what all that fuss was. It is easy! Then you start looking at the performance of your Java app in one core, one GB of memory container, and this is when it all very quickly gets murky. Ops, SREs, and Java developers need to be aware of the JVM's inner w...
Say Goodbye to Microservices, Say Hello to Self-Contained SystemsSay Goodbye to Microservices, Say Hello to Self-Contained Systems
Say Goodbye to Microservices, Say Hello to Self-Contained Systems
Переглядів 61019 годин тому
Microservices are a popular approach to building modern software, offering scalability and flexibility. But for many teams, they come with challenges like increased complexity, difficult debugging, and managing too many small services. In this talk, we'll introduce an alternative: Self-Contained Systems (SCS). Unlike microservices, SCS allows each part of your application to operate independent...
Translating a Cretan Book into English, German, Dutch, Chinese, etc. using Java and ChatGPT APITranslating a Cretan Book into English, German, Dutch, Chinese, etc. using Java and ChatGPT API
Translating a Cretan Book into English, German, Dutch, Chinese, etc. using Java and ChatGPT API
Переглядів 29920 годин тому
"My Village Chorafakia Akrotiri - a book by Emmanouil Koutrakis son of Giorgos (www.chorafakia.com). Heinz held the book in his hand. It was written in flowery Greek. But not just any Greek. The local village dialect of Cretan spoken in the village of Chorafakia. The book was hundreds of pages long, with almost 500 photographs. Unfortunately, even though Heinz has lived on Crete for 18 years, G...
Six Jewels from Six JavasSix Jewels from Six Javas
Six Jewels from Six Javas
Переглядів 33622 години тому
In this talk, Java Cookbook author Ian Darwin will highlight and illustrate six of his favorite enhancements over the last six or eight releases of Java. Tune in to find out which features these are, and how using them can help you become a better Java Developer! P.S. Ian reserves the right to complain about how one or two features have been handled.
Java for Small Coding TasksJava for Small Coding Tasks
Java for Small Coding Tasks
Переглядів 48123 години тому
or small projects, we often reach for a scripting language, such as Python or Bash, because Java seems too heavy handed. In this interactive presentation, I want to convince you to give Java a try for those tasks. With the right tooling (and some innovative features in Java 21 and 22), Java can be a great choice for scripts, Jupyter notebooks, and even code in the browser. The benefit: compile-...
Serverless Java in Action: Cloud Agnostic Design Patterns and TipsServerless Java in Action: Cloud Agnostic Design Patterns and Tips
Serverless Java in Action: Cloud Agnostic Design Patterns and Tips
Переглядів 543День тому
You've probably seen how to create a Function-as-a-Service with one of the cloud providers, but if this is all you know about Serverless, prepare to have your mind blown! In this session we'll show you how to create a production-grade, cloud-agnostic, event-driven serverless solution with Quarkus, a Java stack optimized for fast startup and small footprint; and Knative, an open source community...
Java's Concurrency Journey Continues! Exploring Structured Concurrency and Scoped ValuesJava's Concurrency Journey Continues! Exploring Structured Concurrency and Scoped Values
Java's Concurrency Journey Continues! Exploring Structured Concurrency and Scoped Values
Переглядів 892День тому
Java's concurrency journey has been a long and winding one. We departed from the 'classic threads' station and traveled through Runnables, ExecutorServices, CompletableFutures and ForkJoinPools, before finally arriving at 'virtual threads'. But does 'finally' mean that we've arrived at our final destination, or is it a transfer at best? Now that virtual threads are available, our Java programs ...
Managing Testing DataManaging Testing Data
Managing Testing Data
26 днів тому
Have you ever tried to troubleshoot an issue taking a looking at the log files? I bet you did! And it turns out the issue is related to data usage because, you know, users will use real data! Developers won't! A good thing about your recent troubleshooting is that you can understand the data. It's not a bunch of numbers or UUIDs in the name field. How about your development environment? Probabl...
JTaccuino - A better Jupyter Experience for Java DevelopersJTaccuino - A better Jupyter Experience for Java Developers
JTaccuino - A better Jupyter Experience for Java Developers
Місяць тому
This session shows a new tool for interactive computing for Java developers. Up to now a couple of tools already exist for interactive computing or doing interactive experiments with Java: JShell - terminal Jupyter with Java Kernel - Web based JDoodle - web based The main idea for creating a new tool was to provide a seamless interactive experience to write Java code, interact with the results ...

КОМЕНТАРІ

  • @baticab
    @baticab 2 години тому

    Thanks Bruno and Kirk, awesome talk and advises.

  • @marcelobevilacqua4662
    @marcelobevilacqua4662 5 годин тому

    Parabéns Loiane , ótima Live, parabéns pelo seu trabalho, você me ajudou a aprender java

  • @vvauban
    @vvauban 6 годин тому

    Thanks again for the shoutout!

  • @amgad2002
    @amgad2002 7 годин тому

    please add the social media accounts of all the presenters

  • @apinheira-tech
    @apinheira-tech 8 годин тому

    Loiane amazing 👏🏼👏🏼♥️❤️

  • @RonaldoHabibiDev
    @RonaldoHabibiDev 9 годин тому

    pretty good! thanks =)

  • @allanm6246
    @allanm6246 8 місяців тому

    Gluon Mobile license will cost you $499 a year to remove the nag screen from you App. That's five times the price of an Apple Developer's account.

  • @emileastih9006
    @emileastih9006 10 місяців тому

    This is awesome Craig, thank you for the clean explanation and can't wait for more videos on Spring AI !

  • @AndreaIppolitoIppo
    @AndreaIppolitoIppo 10 місяців тому

    How do you enable the OSD keyboard shortcuts/commands executed? I'm talking for example about "Select Next Node" @7:05 Thanks!

    • @AndreaIppolitoIppo
      @AndreaIppolitoIppo 10 місяців тому

      Figured out, it's the Presentation assistant feature

  • @KevinTanHongAnn
    @KevinTanHongAnn 11 місяців тому

    As of now I've already started experimenting with Spring AI already, but I was doing something like looping a document's page to extract the text while streaming the response. I also referred to the test class to look at how the generated string was constructed. How do I keep on streaming, get the generated string to process it, then continue looping again? String generationTextFromStream = ollamaApi .streamingChat(request) .collectList() .block() .stream() .map(chatResponse -> chatResponse.message().content()) .collect(Collectors.joining()); also, there's lack of a place where I can insert a read and connect timeouts. Would the OllamaApi be having that feature soon?

  • @nbrewer4617
    @nbrewer4617 11 місяців тому

    'Promosm' 👌

  • @karimelaoumari
    @karimelaoumari 11 місяців тому

    thank you very much , want to create a project that creates chatbots for wobsites , that give support for client's based on the data provided , i started working on it , this will help me , but i am still confused do i have to choose the langchain4j or spring ai instable right now it's resk to make a project and recode it again , can you tell me about some was to split the document's into chunks in the vector db witout loosing sens ,thank tou .

  • @asterixcode
    @asterixcode 11 місяців тому

    How could I do the following without using like private Optional<String> myField? If the value is null, it means that the value has not changed. If the value is empty, I want to represent that the value has changed to null. And if the value contains something, it means that the value has changed to that value, that is the value for the field now. Any ideas? I want to represent those 3 cases somehow...

  • @asterixcode
    @asterixcode 11 місяців тому

    Amazing content, thank you so much for this!

  • @YounesAKEL-p9h
    @YounesAKEL-p9h 11 місяців тому

    firsti like to thank you for the the information i have some question how can i get my openai.api-key? is it for free?

  • @ToshiyaKobayashi
    @ToshiyaKobayashi 11 місяців тому

    Very nice session. Thank you!

  • @onebeartoe
    @onebeartoe 11 місяців тому

    Thank you for sharing, Mary!

  • @SarthakGarg-j8i
    @SarthakGarg-j8i 11 місяців тому

    I am not able to add documents in simple vector store , getting error : 'simpleVectorStore' threw exception with message: Status code 404, "{"error":{"code":"DeploymentNotFound", "message":"The API deployment for this resource does not exist. If you created the deployment within the last 5 minutes, please wait a moment and try again."}}"

  • @JTMoonXX30
    @JTMoonXX30 11 місяців тому

    is spring boot just designed to make an http rest service? can i use to build a microservice that does not run an http web server?

  • @antoniob.1253
    @antoniob.1253 11 місяців тому

    Great talk!

  • @rieckpil
    @rieckpil 11 місяців тому

    Awesome video! Thanks for sharing it on UA-cam

  • @onebeartoe
    @onebeartoe Рік тому

    I saw the replay today. This was a great overview. I had done a native image for desktop Linux. Being able to target for mobile is even better!

  • @elizabetamisinovic2840
    @elizabetamisinovic2840 Рік тому

    This is second talk I had a chance to hear from Mohamed, and it was great both times, shared it with my colleagues. Appreciate reference to the StackOverflow 26327957 question from the comment section!

  • @VolnaBelarus84
    @VolnaBelarus84 Рік тому

    Thanks! Quite intresting! But it would be good to compare frameworks which initially support MP, for example Quarkus vs Payara Micro vs Helidon ..

  • @gavr_sas
    @gavr_sas Рік тому

    Really cool talk, thanks!

  • @reznic.a
    @reznic.a Рік тому

    Why maven? Gradke is not popular?

    •  Рік тому

      I had to choose one. And Maven was the one I am more familiar with. Feel free to run the same experiment with Gradle! I would be interested in seeing the results.

  • @toriamfoobar
    @toriamfoobar Рік тому

    Hi, where can we find the materials please?

  • @romawint
    @romawint Рік тому

    50:00 import java.util.Optional; class NestedNullSafe { public static void main(String[] args) { Company company = getCompany(); String salary = Optional.ofNullable(company) .map(Company::manager) .map(Manager::info) .map(Info::salary) .orElse(null); } private static Company getCompany() { return null; } } record Company(Manager manager) {} record Manager (Info info) {} record Info (String salary) {}

  • @freebusdoctor
    @freebusdoctor Рік тому

    Hi

  • @duckydude20
    @duckydude20 Рік тому

    12:50 does it work with graal vm nativeimage?

  • @ganeshbabu8263
    @ganeshbabu8263 Рік тому

    33:14 How do you cover the lines of code with in brackets ?

  • @ganeshbabu8263
    @ganeshbabu8263 Рік тому

    Great one!❤️

  • @nykytakudrya7741
    @nykytakudrya7741 Рік тому

    Thak you very much!

  • @AlisiaMariaAlonso
    @AlisiaMariaAlonso Рік тому

    Thank you ! 🌻

  • @doxxx93
    @doxxx93 Рік тому

    great video! thank you!

  • @TheGurpz
    @TheGurpz Рік тому

    Great presentation! Easy to understand

  • @oliverweiler8113
    @oliverweiler8113 Рік тому

    Amazing talk! I was pretty sure to know everything about Maven Dependency Resolution, turns out I was wrong :D.

  • @sergiocoder
    @sergiocoder Рік тому

    Very useful, thanks!

  • @jonathangriffin9111
    @jonathangriffin9111 Рік тому

    Great presentation and examples. Thank you.

  • @dotnet364
    @dotnet364 Рік тому

    DO the right thing Horstmann: Teach Interfaces First! You got scared that teachers will drop your book?

  • @mrgatogrande4284
    @mrgatogrande4284 Рік тому

    You must be living in the multiverse of madness if you think this Infinity War wasn't won by Spring a decade ago. J2EE or whatever name it has these days (to pretend it's still relevant) is... irrelevant. In fact when I see things like JPA in my Spring Boot project it makes me want to remove them. Bit of advice... We as developers don't want some big comité telling us how things should be done, that we then have to find app server that follows. We want a maven line that we can include in our project that does all that for us. Simply.

  • @kirilanastasoff9558
    @kirilanastasoff9558 2 роки тому

    Great video, is there any other jvm alternatives that handles sweep: fragmentations better?

    • @JavaIL
      @JavaIL 2 роки тому

      Thanks Kiril. There are two kinds of fragmentation (actually 3 but lets forget the third for now) 1. object fragmentation - the current JVM GC algorithms handle them well. CMS which suffered from this is no longer available in modern JVMs 2. huge objects fragmentation ( objects which are > 50% of region) . G1 GC has issue with it but ZGC not.

  • @scottmorgan204
    @scottmorgan204 2 роки тому

    Enjoying your presentation :)

  • @heinzkabutz
    @heinzkabutz 2 роки тому

    Email yesterday: "I do get free licenses of their products, but so do all Java Champions." How do I get a free license for IJ ? Do I need to enroll somewhere to be a Java Champion?" It would be much easier (and probably cheaper) to just buy your license for IntelliJ, and in fact I would strongly encourage you to do that. The typical Java Champion donates dozens of hours a month to promote Java through writing articles, giving free talks, contributing to open source, leading active Java User Groups. There are only 365 Java Champions at the moment, out of a pool of about 12 million active Java programmers. It's super difficult to get in.

  • @garage_logician
    @garage_logician 2 роки тому

    missed the course, was not able to watch live..... bummer

    • @heinzkabutz
      @heinzkabutz 2 роки тому

      The replay is better - at 2x ;-)

    • @graemegeldenhuys9102
      @graemegeldenhuys9102 2 роки тому

      Yeah, it was very short notice, but I'm glad we can still watch the recording here. 🙂

    • @heinzkabutz
      @heinzkabutz 2 роки тому

      @@graemegeldenhuys9102 Totally, we did announce it a while ago on Twitter .... but that's no longer much of a platform to get the word out.

  • @rmanamuli6732
    @rmanamuli6732 2 роки тому

    Waaahhhouuuu thanks for the Data Structure Course 🤗👍

  • @maciejszumielewicz5100
    @maciejszumielewicz5100 2 роки тому

    I had problem with understanding your English many times, please work on that to make your presentations more professional and understandable. Also there were some technical problems with your sildes, they were jumping in some carousel, which forced me to stop video to actually read them

    • @57skies
      @57skies 2 роки тому

      spot on! I thought I was going crazy too.

  • @RuiLopesFR
    @RuiLopesFR 2 роки тому

    I'm sad that this advertising for Red Hat made its way into a conference that I thought was BS-free. Although I recognize that Antoine in the Q&A is more honest in its insights. Good talk for learning about history - throw all the judgemental bullets through the window and try code - you'll understand why there's no competition.

  • @MirekKrenc
    @MirekKrenc 2 роки тому

    Great presentation.Thank you.

  • @ondromihalyi2687
    @ondromihalyi2687 2 роки тому

    Answers to the questions in the live chat: gist.github.com/OndroMih/de2303336aeb16b0e26deeac96541cdf