{"id":322307,"date":"2022-12-09T09:14:20","date_gmt":"2022-12-09T09:14:20","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=150790"},"modified":"2022-12-09T09:14:20","modified_gmt":"2022-12-09T09:14:20","slug":"java-weekly-issue-467","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2022\/12\/09\/java-weekly-issue-467\/","title":{"rendered":"Java Weekly, Issue 467"},"content":{"rendered":"<p class=\"syndicated-attribution\"><meta name= \\\"keywords \\\" content= \\\"\u96fb\u5b50\u8a08\u7b97\u6a5f, \u6559\u80b2, IT \u96fb\u8166\u73ed,\u96fb\u8166\u88dc\u7fd2\uff0c \u96fb\u8166\u73ed\uff0c \u5bb6\u6559\uff0c \u79c1\u4eba\u8001\u5e2b\uff0c \u8cc7\u8a0a\u6280\u8853\uff0c \u7a0b\u5e8f\u8a2d\u8a08\uff0c \u96fb\u5b50\u8a08\u7b97\u6a5f\uff0c \u904a\u6232\uff0c \u860b\u679c\uff0c \u96fb\u5f71\uff0c \u8a08\u7b97\u6a5f\uff0c\u7de8\u78bc\uff0c Java\uff0c C\/C++\uff0c JavaScript\uff0c PHP\uff0c HTML\uff0c CSS\uff0c MySQL\uff0c mobile\uff0c Android\uff0c \u52d5\u6f2b\uff0c Python\uff0c teacher\uff0c \u88dc\u7fd2\uff0c \u96fb\u8166\u88dc\u7fd2 \u8cc7\u8a0a, \u7535\u5b50\u8ba1\u7b97\u673a, IT ,Game, apple, movie, Computer,student,Java,\u6559\u80b2, ,\u5b66\u751f, \u5b66\u4e60, learn, \u6559\u5b66,  Android, apple,anime, animation, \u4fe1\u606f\u6280\u672f, \u7a0b\u5e8f\u8bbe\u8ba1, \u79fb\u52a8\u7535\u8bdd, \u8cc7\u8a0a\u79d1\u6280,Game, Jeu, Juego,Call Of Duty ,\u4f7f\u547d\u53ec\u559a , \u6e38\u620f, \u7535\u5b50\u6e38\u620f,, \u591a\u4eba\u7535\u5b50\u6e38\u620f, \u7f51\u7edc\u6e38\u620f\uff0conline\uff0conline game, \u624b\u673a\u6e38\u620f, mobile \\\"><\/p>\n<h2 style=\"text-align: left;\" id=\"bd-spring-and-java\" data-id=\"spring-and-java\">1.<strong> Spring and Java<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"spring-and-java\"><\/div>\n<p><a href=\"https:\/\/minborgsjavapot.blogspot.com\/2022\/12\/java-20-sneak-peek-on-panama-ffm-api.html\"><strong>&gt;&gt;<\/strong><\/a> <strong><a id=\"article_title_link_35544862298\" class=\"article_title_link\" href=\"https:\/\/minborgsjavapot.blogspot.com\/2022\/12\/java-20-sneak-peek-on-panama-ffm-api.html\"  rel=\"noopener\"><strong>J<\/strong>ava 20: A Sneak Peek on the Panama FFM API (Second Preview)<\/a>\u00a0<\/strong>[<span style=\"color: #800000;\">minborgsjavapot.blogspot.com<\/span>]<\/p>\n<p>A closer look at some of the improvements in the <strong>new preview version of FFM API in Java 20<\/strong>. Yes, 20 <img decoding=\"async\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/1f642.png\" alt=\"?\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/><\/p>\n<p><strong><a href=\"https:\/\/www.infoq.com\/news\/2022\/12\/aws-lambda-snapstart-accelerate\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\">&gt;&gt;<\/a> <a id=\"article_title_link_35495327272\" class=\"article_title_link\" href=\"https:\/\/www.infoq.com\/news\/2022\/12\/aws-lambda-snapstart-accelerate\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"  rel=\"noopener\">AWS Lambda SnapStart Accelerates Java Functions<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">infoq.com<\/span>]<\/p>\n<p>AWS announced an update to its FaaS offering AWS\u00a0Lambda with the Lambda SnapStart feature, <strong>reducing cold starts for Java Functions<\/strong>.<\/p>\n<p><a href=\"https:\/\/blog.jooq.org\/when-to-use-jooq-and-when-to-use-native-sql\/\"><strong>&gt;&gt; When to Use jOOQ and When to Use Native SQL<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">blog.jooq.org<\/span>]<\/p>\n<p>And some pros and cons of using native queries vs using jOOQ type-safe queries in a project.<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li><a href=\"https:\/\/gradle.com\/blog\/dogfooding-test-distribution-for-maximum-effect-at-gradle\/\"><strong>&gt;&gt;<\/strong><strong> Dogfooding Test Distribution for Maximum Effect at Gradle <\/strong><\/a>[<span style=\"color: #800000;\">gradle.com<\/span>]<\/li>\n<li><a href=\"https:\/\/www.wimdeblauwe.com\/blog\/2022\/12\/01\/the-error-handling-spring-boot-starter-library-vs-spring-6-problemdetail\/\"><strong>&gt;&gt;<\/strong><strong> The error-handling-spring-boot-starter library vs Spring 6 ProblemDetail<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">wimdeblauwe.com<\/span>]<\/li>\n<li><a href=\"https:\/\/foojay.io\/today\/how-java-litters-beyond-the-heap-relational-databases\/\"><strong>&gt;&gt;<\/strong><\/a><strong> <a id=\"article_title_link_35473913075\" class=\"article_title_link\" href=\"https:\/\/foojay.io\/today\/how-java-litters-beyond-the-heap-relational-databases\/\"  rel=\"noopener\">How Java Litters Beyond the Heap: Part 1, Relational Databases<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">foojay.io<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/www.infoq.com\/news\/2022\/12\/omnifish-jakartaee-glassfish\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\">&gt;&gt;<\/a> <a id=\"article_title_link_35504929286\" class=\"article_title_link\" href=\"https:\/\/www.infoq.com\/news\/2022\/12\/omnifish-jakartaee-glassfish\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"  rel=\"noopener\">OmniFish on Providing Support for Jakarta EE 10 and GlassFish 7<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">infoq.com<\/span>]=<\/li>\n<\/ul>\n<p><strong>Webinars and presentations:<\/strong><\/p>\n<ul>\n<li><strong><a id=\"article_title_link_35500199407\" class=\"article_title_link\" href=\"https:\/\/foojay.io\/today\/what-is-an-application-server-in-3-minutes\/\"  rel=\"noopener\">&gt;&gt; What is An Application Server? In 3 Minutes!<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">foojay.io<\/span>]<\/li>\n<li><strong><a id=\"article_title_link_35503309512\" class=\"article_title_link\" href=\"https:\/\/spring.io\/blog\/2022\/12\/01\/a-bootiful-podcast-java-champion-gunnar-morling-about-messaging-middleware-debezium-change-data-capture-and-more\"  rel=\"noopener\">&gt;&gt; A Bootiful Podcast: Java Champion Gunnar Morling about messaging middleware, Debezium, change data capture, and more.<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><strong><a id=\"article_title_link_35506827590\" class=\"article_title_link\" href=\"https:\/\/blog.sebastian-daschner.com\/entries\/ai-generated-texts-images-quarkus\"  rel=\"noopener\">&gt;&gt; How to Generate AI Texts &#038; Images With Quarkus &#038; OpenAI<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">blog.sebastian-daschner.com<\/span>]<\/li>\n<li><a href=\"https:\/\/inside.java\/2022\/12\/01\/newscast-38\/\"><strong>&gt;&gt; Glimpse at Java 20: Pattern Matching, Concurrent Programming and Valhalla &#8211; Inside Java Newscast #38<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/span>]<\/li>\n<li><a href=\"https:\/\/inside.java\/2022\/12\/06\/jepcafe15\/\"><strong>&gt;&gt; Java Value Objects in Action with Valhalla &#8211; JEP Caf\u00e9 #15 <\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/span>]<\/li>\n<\/ul>\n<p><strong>Time to upgrade:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/in.relation.to\/2022\/12\/07\/hibernate-orm-616-final\/\"><strong>&gt;&gt; Hibernate ORM 6.1.6.Final released<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">in.relation.to<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/spring.io\/blog\/2022\/12\/02\/spring-cloud-2022-0-0-release-candidate-3-codename-kilburn-has-been-released\">&gt;&gt;<\/a> <a id=\"article_title_link_35514221554\" class=\"article_title_link\" href=\"https:\/\/spring.io\/blog\/2022\/12\/02\/spring-cloud-2022-0-0-release-candidate-3-codename-kilburn-has-been-released\"  rel=\"noopener\">Spring Cloud 2022.0.0 Release Candidate 3 (codename Kilburn) Has Been Released<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/spring.io\/blog\/2022\/12\/02\/spring-ws-samples-upgraded-for-spring-boot-3-0\">&gt;&gt;<\/a> <a id=\"article_title_link_35516512732\" class=\"article_title_link\" href=\"https:\/\/spring.io\/blog\/2022\/12\/02\/spring-ws-samples-upgraded-for-spring-boot-3-0\"  rel=\"noopener\">Spring WS Samples upgraded for Spring Boot 3.0!<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/www.infoq.com\/news\/2022\/12\/resilience4j-2-0-0\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\">&gt;&gt;<\/a> <a id=\"article_title_link_35537597635\" class=\"article_title_link\" href=\"https:\/\/www.infoq.com\/news\/2022\/12\/resilience4j-2-0-0\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"  rel=\"noopener\">Resilience4j 2.0.0 Delivers Support for JDK 17<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">infoq.com<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/spring.io\/blog\/2022\/12\/05\/spring-shell-2-1-4-and-3-0-0-m3-are-now-available\">&gt;&gt;<\/a> <a id=\"article_title_link_35543747086\" class=\"article_title_link\" href=\"https:\/\/spring.io\/blog\/2022\/12\/05\/spring-shell-2-1-4-and-3-0-0-m3-are-now-available\"  rel=\"noopener\">Spring Shell 2.1.4 and 3.0.0-M3 are now available<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/www.jpa-buddy.com\/blog\/what-is-new-in-jpa-buddy-2022-5\/\">&gt;&gt;<\/a> <a href=\"https:\/\/www.jpa-buddy.com\/blog\/what-is-new-in-jpa-buddy-2022-5\/\"><strong>What&#8217;s new in JPA Buddy 2022.5<\/strong><\/a> [<span style=\"color: #800000;\">jpa-buddy.com<\/span>]<\/li>\n<\/ul>\n<h2 id=\"bd-technical-amp-musings\" data-id=\"technical-amp-musings\"><strong>2. Technical &#038; Musings<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"technical-amp-musings\"><\/div>\n<p><strong><a href=\"https:\/\/vladmihalcea.com\/uuid-database-primary-key\/\">&gt;&gt; The best UUID type for a database Primary Ke<\/a>y<\/strong>\u00a0[<span style=\"color: #800000;\">vladmihalcea.com<\/span>]<\/p>\n<p>Why UUIDs are not good ideas for primary keys and <strong>how Time-Sorted Unique Identifiers<\/strong> can be good alternatives. An interesting read.<\/p>\n<p><strong><a href=\"https:\/\/reflectoring.io\/dependency-injection-and-inversion-of-control\/\">&gt;&gt; Dependency Injection and Inversion of Control<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">reflectoring.io<\/span>]<\/p>\n<p>And a practical guide on how to apply IoC\/DI principles to everyday projects.<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/kubernetes.io\/blog\/2022\/12\/01\/runtime-observability-opentelemetry\/\"><strong>&gt;&gt; Boosting Kubernetes container runtime observability with OpenTelemetry<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">kubernetes.io<\/span>]<\/li>\n<li><a href=\"https:\/\/kubernetes.io\/blog\/2022\/12\/05\/forensic-container-checkpointing-alpha\/\"><strong>&gt;&gt; Forensic container checkpointing in Kubernetes<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">kubernetes.io<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/blog.frankel.ch\/web-caching\/server\/\">&gt;&gt;<\/a> <a id=\"article_title_link_35532603105\" class=\"article_title_link\" href=\"https:\/\/blog.frankel.ch\/web-caching\/server\/\"  rel=\"noopener\">Web resource caching: Server-side<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">blog.frankel.ch<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/www.infoq.com\/articles\/serverless-websockets-realtime-messaging\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\">&gt;&gt;<\/a> <a id=\"article_title_link_35495327289\" class=\"article_title_link\" href=\"https:\/\/www.infoq.com\/articles\/serverless-websockets-realtime-messaging\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"  rel=\"noopener\">Using Serverless WebSockets To Enable Real-time Messaging<\/a><\/strong>\u00a0[<span style=\"color: #800000;\">infoq.com<\/span>]<\/li>\n<li><a href=\"https:\/\/foojay.io\/today\/kafka-vs-chronicle-for-microservices-which-is-750-times-faster\/\"><strong>&gt;&gt; Kafka vs. Chronicle for Microservices: Which is 750 Times Faster?<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">foojay.io<\/span>]<\/li>\n<li><a href=\"https:\/\/www.allthingsdistributed.com\/2022\/12\/tech-predictions-for-2023-and-beyond.html\"><strong>&gt;&gt; Tech predictions for 2023 and beyond<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">allthingsdistributed.com<\/span>]<\/li>\n<li><a href=\"https:\/\/netflixtechblog.com\/ready-to-go-sample-data-pipelines-with-dataflow-17440a9e141d?source=rss-c3aeaf49d8a4------2\"><strong>&gt;&gt; Ready-to-go sample data pipelines with Dataflow<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">netflixtechblog.com<\/span>]<\/li>\n<li><a href=\"https:\/\/foojay.io\/today\/why-i-dont-do-tdd\/\">&gt;&gt;<\/a>\u00a0<strong><a id=\"article_title_link_35538614981\" class=\"article_title_link\" href=\"https:\/\/foojay.io\/today\/why-i-dont-do-tdd\/\"  rel=\"noopener\">Why I Don\u2019t do TDD<\/a>\u00a0<\/strong>[<span style=\"color: #800000;\">foojay.io<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/blog.scottlogic.com\/2022\/12\/01\/an-introduction-to-markdown.html\">&gt;&gt; An introduction to Markdown <\/a><\/strong>[<span style=\"color: #800000;\">blog.scottlogic.com<\/span>]<\/li>\n<\/ul>\n<h2 id=\"bd-comics\" data-id=\"comics\"><strong>3. Comics<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"comics\"><\/div>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2022-12-08\"><strong>&gt;&gt; CEO Fixes His Problem<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2022-12-07\"><strong>&gt;&gt; Dogber Pr Firm Helps With Phones<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2022-12-05\"><strong>&gt;&gt; Exploding Phones<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<h2 id=\"bd-pick-of-the-week\" data-id=\"pick-of-the-week\"><strong>4. Pick of the Week<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"pick-of-the-week\"><\/div>\n<p>And, the Developer Nation survey is back and running now, along with a bunch of interesting prizes <img decoding=\"async\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/14.0.0\/72x72\/1f642.png\" alt=\"?\" class=\"wp-smiley\" style=\"height: 1em; max-height: 1em;\" \/> :<\/p>\n<p><strong><a href=\"https:\/\/www.baeldung.com\/devnation-survey-vm2ex\" rel=\"sponsored\">&gt;&gt; Developer Nation Survey<\/a><\/strong><\/p>\n\n<p class=\"syndicated-attribution\"><figure class= \\\"wp-block-image alignnone \\\"><img src= \\\"http:\/\/itteacheritfreelance.hk\/test\/wordpress\/wp-content\/uploads\/2016\/05\/logo2-2.png\\\" alt=\\\"IT\u96fb\u8166\u88dc\u7fd2 java\u88dc\u7fd2 \u70ba\u5927\u5bb6\u914d\u5c0d\u96fb\u8166\u88dc\u7fd2,IT freelance, \u79c1\u4eba\u8001\u5e2b, PHP\u88dc\u7fd2,CSS\u88dc\u7fd2,XML,Java\u88dc\u7fd2,MySQL\u88dc\u7fd2,graphic design\u88dc\u7fd2,\u4e2d\u5c0f\u5b78ICT\u88dc\u7fd2,\u4e00\u5c0d\u4e00\u79c1\u4eba\u88dc\u7fd2\u548cFreelance\u81ea\u7531\u5de5\u4f5c\u914d\u5c0d\u3002\\\"\/><figcaption>\u7acb\u523b\u8a3b\u518a\u53ca\u5831\u540d\u96fb\u8166\u88dc\u7fd2\u8ab2\u7a0b\u5427!<\/figcaption><\/figure>\r\n<\/br>Find A Teacher Form:\r\n<\/br>https:\/\/docs.google.com\/forms\/d\/1vREBnX5n262umf4wU5U2pyTwvk9O-JrAgblA-wH9GFQ\/viewform?edit_requested=true#responses\r\n<\/br><\/br>Email:\r\n<\/br>public1989two@gmail.com<br><br><br><br><br><br><br>\r\n<a href=www.itsec.hk style=color:#FFFFFF;>www.itsec.hk<\/a><br>\r\n<a href=\\\"www.itsec.vip\\\" style=color:#FFFFFF;>www.itsec.vip<\/a><br>\r\n<a href=\\\"www.itseceu.uk\\\" style=color:#FFFFFF;>www.itseceu.uk<\/a><br><\/p>","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>Panama improvements, fast Java startup in AWS lambda, Spring Boot error handling, TSID vs UUID, and dependency inversion!\u00a0<a href=\"https:\/\/www.baeldung.com\/java-weekly-467\" title=\"Java Weekly, Issue 467\" class=\"more\">&gt;&gt;&gt;<\/a><\/p>\n<\/div>","protected":false},"author":214,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"slim_seo":{"title":"Java Weekly, Issue 467 - ITTeacherITFreelance.hk","description":"Panama improvements, fast Java startup in AWS lambda, Spring Boot error handling, TSID vs UUID, and dependency inversion!\u00a0 &gt;&gt;&gt;"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/322307"}],"collection":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/users\/214"}],"replies":[{"embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/comments?post=322307"}],"version-history":[{"count":1,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/322307\/revisions"}],"predecessor-version":[{"id":322308,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/322307\/revisions\/322308"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=322307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=322307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=322307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}