{"id":315586,"date":"2021-11-11T09:37:22","date_gmt":"2021-11-11T09:37:22","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=112046"},"modified":"2021-11-11T09:37:22","modified_gmt":"2021-11-11T09:37:22","slug":"java-weekly-issue-411","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2021\/11\/11\/java-weekly-issue-411\/","title":{"rendered":"Java Weekly, Issue 411"},"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 data-id=\"spring-and-java\"><strong>1. Spring and Java<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"spring-and-java\"><\/div>\n<p><a href=\"https:\/\/reflectoring.io\/comparison-of-java-http-clients\/\"  rel=\"noopener\"><strong>&gt;&gt; Comparison of Java HTTP Clients<\/strong><\/a> [<span style=\"color: #800000;\">reflectoring.io<\/span>]<\/p>\n<p>An in-depth comparison of <strong>different available options when it comes to calling HTTP APIs<\/strong> in the Java ecosystem<\/p>\n<p><a href=\"https:\/\/www.infoq.com\/news\/2021\/11\/graalvm-21-3-java-17\/\"  rel=\"noopener\"><strong>&gt;&gt; GraalVM 21.3 Supports Java 17<\/strong><\/a> [<span style=\"color: #800000;\">infoq.com<\/span>]<\/p>\n<p>A new version of <strong>GraalVM with Java 17 support<\/strong>, 40% performance improvement, a new <em>proftool<\/em> for performance metrics, and quite a bit more<\/p>\n<p><a href=\"https:\/\/thorben-janssen.com\/implementing-bulk-updates-with-spring-data-jpa\/\"  rel=\"noopener\"><strong>&gt;&gt; Implementing Bulk Updates with Spring Data JPA<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">thorben-janssen.com<\/span>]<\/p>\n<p>And a solid article on how to<strong> improve the throughput of updates<\/strong> using Spring Data JPA and its batching configurations<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li><a href=\"https:\/\/reflectoring.io\/spring-boot-feature-flags\/\"  rel=\"noopener\"><strong>&gt;&gt; Feature Flags with Spring Boot<\/strong><\/a> [<span style=\"color: #800000;\">reflectoring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/www.infoq.com\/news\/2021\/11\/java-plugin-version-1-vscode\/\"  rel=\"noopener\"><strong>&gt;&gt; Red Hat Releases Language Support for Java Plugin 1.0 for VSCode<\/strong><\/a> [<span style=\"color: #800000;\">infoq.com<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/spring.io\/blog\/2021\/11\/08\/update-on-eol-for-spring-security-oauth\">&gt;&gt; Update on EOL for Spring Security OAuth<\/a><\/strong> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/www.beust.com\/weblog\/2021\/11\/09\/what-kotlin-could-learn-from-rust\/\"  rel=\"noopener\"><strong>&gt;&gt; What Kotlin could learn from Rust<\/strong><\/a> [<span style=\"color: #800000;\">beust.com<\/span>]<\/li>\n<\/ul>\n<p><strong>Webinars and presentations:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/11\/04\/bootiful-podcast-legend-dutchess-founder-devoxx4kids-contributor-and-fellow-java-champion-linda-van-der-pal\"  rel=\"noopener\"><strong>&gt;&gt; Bootiful Podcast: Legend, Dutchess founder, Devoxx4Kids contributor, and fellow Java Champion Linda van der Pal<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/11\/03\/spring-tips-controllers-give-http-a-rest\"  rel=\"noopener\"><strong>&gt;&gt; Spring Tips: @Controllers: Give HTTP a REST<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.payara.fish\/switch-to-open-jdk-as-a-jakarta-ee-developer\"  rel=\"noopener\"><strong>&gt;&gt; 7 Reasons to Switch to OpenJDK 17 as a Jakarta EE Developer<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">blog.payara.fish<\/span>]<\/li>\n<\/ul>\n<p><strong>Time to upgrade:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/in.relation.to\/2021\/11\/09\/hibernate-reactive-1_1_0_Final\/\"  rel=\"noopener\"><strong>&gt;&gt; Hibernate Reactive 1.1.0.Final released<\/strong><\/a> [<span style=\"color: #800000;\">in.relation.to<\/span>]<\/li>\n<li><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-4-1-final-released\/\"  rel=\"noopener\"><strong>&gt;&gt; Quarkus 2.4.1 Final released<\/strong><\/a> [<span style=\"color: #800000;\">quarkus.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/11\/05\/spring-cloud-data-flow-2-8-4-and-2-9-1-released\"  rel=\"noopener\"><strong>&gt;&gt; Spring Cloud Data Flow 2.8.4 and 2.9.1 Released<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/11\/04\/spring-cloud-gateway-versions-2-2-10-release-and-3-0-5-are-now-available\"  rel=\"noopener\"><strong>&gt;&gt; Spring Cloud Gateway versions 2.2.10.RELEASE and 3.0.5 are now available<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/11\/03\/spring-cloud-2021-0-0-rc1-codename-jubilee-has-been-released\"  rel=\"noopener\"><strong>&gt;&gt; Spring Cloud 2021.0.0-RC1 (codename Jubilee) Has Been Released<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/docs.gradle.org\/7.3\/release-notes.html\"  rel=\"noopener\"><strong>&gt;&gt; Gradle 7.3 is released<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">docs.gradle.org<\/span>]<\/li>\n<li><a href=\"https:\/\/www.wildfly.org\/\/news\/2021\/11\/04\/WildFly2501-Released\/\"  rel=\"noopener\"><strong>&gt;&gt; WildFly 25.0.1 is released!<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">wildfly.org<\/span>]<\/li>\n<\/ul>\n<h2 data-id=\"technical\"><strong>2. Technical<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"technical\"><\/div>\n<p><a href=\"https:\/\/kubernetes.io\/blog\/2021\/11\/09\/non-root-containers-and-devices\/\"  rel=\"noopener\"><strong>&gt;&gt; Non-root Containers And Devices<\/strong><\/a> [<span style=\"color: #800000;\">kubernetes.io<\/span>]<\/p>\n<p>An insightful read on available options to <strong>access devices in non-root containers and pods<\/strong> \u2013 a bit complicated but definitely useful in some scenarios.<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/martinfowler.com\/articles\/strong-weak-arch.html\"  rel=\"noopener\"><strong>&gt;&gt; The strong and weak forces of architecture<\/strong><\/a> [<span style=\"color: #800000;\">martinfowler.com<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.frankel.ch\/extending-third-party-apis\/\"  rel=\"noopener\"><strong>&gt;&gt; Extending third-party APIs in different languages<\/strong><\/a> [<span style=\"color: #800000;\">blog.frankel.ch<\/span>]<\/li>\n<li><a href=\"https:\/\/martinfowler.com\/articles\/devops-compliance.html\"  rel=\"noopener\"><strong>&gt;&gt; Compliance in a DevOps Culture<\/strong><\/a> [<span style=\"color: #800000;\">martinfowler.com<\/span>]<\/li>\n<li><a href=\"https:\/\/advancedweb.hu\/what-are-resolvers-in-appsync-and-how-they-work\/\"  rel=\"noopener\"><strong>&gt;&gt; What are Resolvers in AppSync and how they work <\/strong><\/a>[<span style=\"color: #800000;\">advancedweb.hu<\/span>]<\/li>\n<\/ul>\n<h2 data-id=\"musings\"><strong>3. Musings<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"musings\"><\/div>\n<p><a href=\"https:\/\/reflectoring.io\/one-best-way\/\"  rel=\"noopener\"><strong>&gt;&gt; One Best Way &#8211; Continuous Improvement in Software Engineering<\/strong><\/a> [<span style=\"color: #800000;\">reflectoring.io<\/span>]<\/p>\n<p>Embracing the change \u2013 instead of pursuing the perfect solution, let&#8217;s <strong>act with agility and improve based on feedback<\/strong>!<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/www.allthingsdistributed.com\/2021\/11\/announcing-aws-canada-west-region.html\"  rel=\"noopener\"><strong>&gt;&gt;\u00a0Our investment in Canada \u2013 a new Region coming soon!<\/strong><\/a> [<span style=\"color: #800000;\">allthingsdistributed.com<\/span>]<\/li>\n<li><a href=\"https:\/\/www.giorgiosironi.com\/2021\/11\/a-year-of-mob-programming-part-2.html\"  rel=\"noopener\"><strong>&gt;&gt; A year of mob programming, part 2: Collective Code Ownership <\/strong><\/a>[<span style=\"color: #800000;\">giorgiosironi.com<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.scottlogic.com\/2021\/11\/05\/On-finding-purpose-nurturing-talent-and-building-a-sustainable-future.html\"  rel=\"noopener\"><strong>&gt;&gt; On finding purpose, nurturing talent and building a sustainable future<\/strong><\/a> [<span style=\"color: #800000;\">blog.scottlogic.com<\/span>]<\/li>\n<li><a href=\"https:\/\/avdi.codes\/your-mailing-list\/\"  rel=\"noopener\"><strong>&gt;&gt; A Pattern Language of Banana Stands: Your Mailing List<\/strong><\/a> [<span style=\"color: #800000;\">avdi.codes<\/span>]<\/li>\n<li><a href=\"https:\/\/avdi.codes\/the-banana-stand\/\"  rel=\"noopener\"><strong>&gt;&gt; There&#8217;s Always Money in the Banana Stand<\/strong><\/a> [<span style=\"color: #800000;\">avdi.codes<\/span>]<\/li>\n<\/ul>\n<h2 data-id=\"comics\"><strong>4. Comics<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"comics\"><\/div>\n<p>And my favorite Dilberts of the week:<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2021-11-09\"  rel=\"noopener\"><strong>&gt;&gt; Abundance Of Caution<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2021-11-06\"  rel=\"noopener\"><strong>&gt;&gt; Wally&#8217;s Career Plan<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2021-11-05\"  rel=\"noopener\"><strong>&gt;&gt; User Interface<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<h2 data-id=\"pick-of-the-week\"><strong>5. Pick of the Week<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"pick-of-the-week\"><\/div>\n<p>Finally, definitely have a look at the new Serverless platform from Cockroach Labs:<\/p>\n<p><strong><a href=\"https:\/\/www.baeldung.com\/cockroach-serverless-2\" rel=\"sponsored\">&gt;&gt;\u00a0Introducing CockroachDB Serverless<\/a> <\/strong>[<span style=\"color: #993300;\">cockroachlabs.com<\/span>]<\/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>Bulk updates in Spring Data JPA, Java HTTP Clients, Hibernate Reactive, feature flags in Spring Boot, and non-root containers in K8S!\u00a0<a href=\"https:\/\/www.baeldung.com\/java-weekly-411\" title=\"Java Weekly, Issue 411\" 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 411 - ITTeacherITFreelance.hk","description":"Bulk updates in Spring Data JPA, Java HTTP Clients, Hibernate Reactive, feature flags in Spring Boot, and non-root containers in K8S!\u00a0 &gt;&gt;&gt;"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/315586"}],"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=315586"}],"version-history":[{"count":2,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/315586\/revisions"}],"predecessor-version":[{"id":316135,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/315586\/revisions\/316135"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=315586"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=315586"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=315586"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}