{"id":148213,"date":"2020-12-18T06:40:05","date_gmt":"2020-12-18T06:40:05","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=92441"},"modified":"2020-12-18T06:40:05","modified_gmt":"2020-12-18T06:40:05","slug":"java-weekly-issue-364","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2020\/12\/18\/java-weekly-issue-364\/","title":{"rendered":"Java Weekly, Issue 364"},"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:\/\/alidg.me\/blog\/2020\/12\/10\/hotspot-intrinsics\"  rel=\"noopener\"><strong>&gt;&gt; HotSpot Intrinsics<\/strong><\/a> [<span style=\"color: #800000\">alidg.me]<\/span><\/p>\n<p><strong>What you see isn&#8217;t what you get<\/strong>: an introduction to how compiler intrinsics works on the HotSpot JVM!<\/p>\n<p><a href=\"https:\/\/www.morling.dev\/blog\/smaller-faster-starting-container-images-with-jlink-and-appcds\/\"  rel=\"noopener\"><strong>&gt;&gt; Smaller, Faster-starting Container Images With jlink and AppCDS <\/strong><\/a>[<span style=\"color: #800000\">morling.dev<\/span>]<\/p>\n<p>Application Class Data Sharing or<strong> AppCDS meets jlink<\/strong>: faster startup times with AppCDS in custom runtime images!<\/p>\n<p><a href=\"https:\/\/developers.googleblog.com\/2020\/12\/announcing-grpc-kotlin-10-for-android.html\"  rel=\"noopener\"><strong>&gt;&gt; Announcing gRPC Kotlin 1.0 for Android and Cloud<\/strong><\/a>\u00a0[<span style=\"color: #800000\">developers.googleblog.com<\/span>]<\/p>\n<p>Better<strong> asynchrony with gRPC and coroutines<\/strong>: high-performance RPC framework with Kotlin, gRPC, and of course, CSP style concurrency.<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li><a href=\"https:\/\/www.infoq.com\/news\/2020\/12\/mvnd-mavens-speed-daemon\/\"  rel=\"noopener\"><strong>&gt;&gt; mvnd: Maven&#8217;s Speed Daemon<\/strong><\/a>\u00a0[<span style=\"color: #800000\">infoq.com<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/14\/case-study-change-data-capture-cdc-analysis-with-cdc-debezium-source-and-analytics-sink-in-real-time\"  rel=\"noopener\"><strong>&gt;&gt; Change Data Capture (CDC) Analysis with CDC Debezium source and Analytics sink in Real-Time<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/10\/cloud-events-and-spring-part-1\"  rel=\"noopener\"><strong>&gt;&gt; Cloud Events and Spring<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/15\/testing-spring-cloud-stream-applications-part-1\"  rel=\"noopener\"><strong>&gt;&gt; Testing Spring Cloud Stream Applications<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/rieckpil.de\/override-spring-boot-configuration-properties-for-tests\/\"  rel=\"noopener\"><strong><span class=\"t-bg-white l-pa2 l-d-i\">&gt;&gt; Override Spring Boot Configuration Properties For Tests<\/span><\/strong><\/a><span class=\"t-bg-white l-pa2 l-d-i\"> [<span style=\"color: #800000\">rieckpil.de<\/span>]<\/span><\/li>\n<li><a href=\"https:\/\/blog.frankel.ch\/hack-ease-usage-log4j2-spring-boot\/\"  rel=\"noopener\"><strong>&gt;&gt; A dirty hack to ease the usage of Log4J2 in Spring Boot <\/strong><\/a>[<span style=\"color: #800000\">blog.frankel.ch<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.sebastian-daschner.com\/entries\/quarkus-remote-dev-in-containers-update\"  rel=\"noopener\"><strong>&gt;&gt; Quarkus remote dev in Docker containers <\/strong><\/a>[<span style=\"color: #800000\">blog.sebastian-daschner.com<\/span>]<\/li>\n<\/ul>\n<p><strong>Webinars and presentations:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/inside.java\/2020\/12\/11\/podcast-009\/\"  rel=\"noopener\"><strong>&gt;&gt; Episode 9 \u201cProject Panama &#8211; The Foreign Memory Access API\u201d with Maurizio Cimadamore and Jorn Vernee <\/strong><\/a>[<span style=\"color: #800000\">inside.java<\/span>]<\/li>\n<li><a href=\"https:\/\/inside.java\/2020\/12\/11\/skara-github-universe\/\"  rel=\"noopener\"><strong>&gt;&gt; Migrating OpenJDK to Git &#038; GitHub &#8211; GitHub Universe 2020<\/strong><\/a>\u00a0[<span style=\"color: #800000\">inside.java<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/11\/a-bootiful-podcast-open-web-legend-dion-almaer\"  rel=\"noopener\"><strong>&gt;&gt; A Bootiful Podcast: open-web legend Dion Almaer<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/15\/a-bootiful-podcast-spring-batch-co-lead-mahmoud-ben-hassine\"  rel=\"noopener\"><strong>&gt;&gt; A Bootiful Podcast: Spring Batch co-lead Mahmoud Ben Hassine<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<\/ul>\n<p><strong>Time to upgrade:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/netty.io\/news\/2020\/12\/17\/4-1-56-Final.html\"><strong>&gt;&gt; Netty 4.1.56.Final released<\/strong><\/a>\u00a0[<span style=\"color: #800000\">netty.io<\/span>]<\/li>\n<li><strong>&gt;&gt; <a href=\"https:\/\/spring.io\/blog\/2020\/12\/11\/spring-boot-2-4-1-available-now\">Spring Boot 2.4.1, <\/a><a href=\"https:\/\/spring.io\/blog\/2020\/12\/11\/spring-boot-2-3-7-available-now\"  rel=\"noopener\">2.3.7, and <\/a><a href=\"https:\/\/spring.io\/blog\/2020\/12\/10\/spring-boot-2-2-12-available-now\">2.2.12 available now<\/a><\/strong> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/09\/spring-data-2020-0-2-neumann-sr6-and-moore-sr12-available\"  rel=\"noopener\"><strong>&gt;&gt; Spring Data 2020.0.2, Neumann-SR6, and Moore-SR12 available<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/09\/first-milestone-of-spring-data-2021-0-0-released\"  rel=\"noopener\"><strong>&gt;&gt; First milestone of Spring Data 2021.0.0 released<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/in.relation.to\/2020\/12\/16\/hibernate-validator-617-6022-released\/\"  rel=\"noopener\"><strong>&gt;&gt; Hibernate Validator 6.1.7.Final and 6.0.22.Final released<\/strong><\/a>\u00a0[<span style=\"color: #800000\">in.relation.to<\/span>]<\/li>\n<li><a href=\"https:\/\/in.relation.to\/2020\/12\/11\/hibernate-search-6-0-0-Final\/\"  rel=\"noopener\"><strong>&gt;&gt; Hibernate Search 6.0.0.Final is out!<\/strong><\/a>\u00a0[<span style=\"color: #800000\">in.relation.to<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/10\/spring-batch-4-2-5-and-4-3-1-available-now\"  rel=\"noopener\"><strong>&gt;&gt; Spring Batch 4.2.5 and 4.3.1 available now<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2020\/12\/10\/spring-vault-2-2-3-release-available\"  rel=\"noopener\"><strong>&gt;&gt; Spring Vault 2.2.3.RELEASE available<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/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:\/\/netflixtechblog.com\/how-netflix-scales-its-api-with-graphql-federation-part-2-bbe71aaec44a\"  rel=\"noopener\"><strong>&gt;&gt; How Netflix Scales its API with GraphQL Federation<\/strong><\/a>\u00a0[<span style=\"color: #800000\">netflixtechblog.com<\/span>]<\/p>\n<p>Flexible and complex schema, observability, and security: <strong>GraphQL federation at Netflix scale!<\/strong><\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><strong><a href=\"https:\/\/vladmihalcea.com\/sql-lateral-join\/\"  rel=\"noopener\">&gt;&gt; SQL LATERAL JOIN \u2013 A Beginner\u2019s Guide<\/a><\/strong> [<span style=\"color: #800000\">vladmihalcea.com<\/span>]<\/li>\n<li><a href=\"https:\/\/techblog.bozho.net\/syntactic-sugar-is-not-always-good\/\"  rel=\"noopener\"><strong>&gt;&gt; Syntactic Sugar Is Not Always Good<\/strong><\/a> [<span style=\"color: #800000\">techblog.bozho.net<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/bravenewgeek.com\/structuring-a-cloud-infrastructure-organization\/\"  rel=\"noopener\">&gt;&gt; Structuring a Cloud Infrastructure Organization<\/a><\/strong>\u00a0[<span style=\"color: #800000\">bravenewgeek.com<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.scottlogic.com\/2020\/12\/07\/on-openfin-and-interoperability.html\"  rel=\"noopener\"><strong>&gt;&gt; On OpenFin and Interoperability<\/strong><\/a> [<span style=\"color: #800000\">blog.scottlogic.com<\/span>]<\/li>\n<li><a href=\"https:\/\/vladmihalcea.com\/mysql-jdbc-statement-caching\/\"  rel=\"noopener\"><strong>&gt;&gt; MySQL JDBC Statement Caching<\/strong><\/a>\u00a0[<span style=\"color: #800000\">vladmihalcea.com<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.codecentric.de\/en\/2020\/12\/ner-with-little-data-transformers-to-the-rescue\/\"  rel=\"noopener\"><strong>&gt;&gt; NER with little data? Transformers to the rescue!<\/strong><\/a> [<span style=\"color: #800000\">blog.codecentric.de<\/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:\/\/tech.ssut.me\/apple-m1-chip-benchmarks-focused-on-the-real-world-programming\/\"  rel=\"noopener\"><strong>&gt;&gt; Apple&#8217;s M1 Chip Benchmarks focused on the real-world programming<\/strong><\/a>\u00a0[<span style=\"color: #800000\">tech.ssut.me<\/span>]<\/p>\n<p><strong>ARM vs x86<\/strong>: Apple&#8217;s M1 chip shines on some famous benchmarks suits for Java, Javascript, Python, and Go!<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/reflectoring.io\/book-review-make-time\/\"  rel=\"noopener\"><strong>&gt;&gt; Book Notes: Make Time<\/strong><\/a> [<span style=\"color: #800000\">reflectoring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/netflixtechblog.com\/life-of-a-netflix-partner-engineer-the-case-of-extra-40-ms-b4c2dd278513\"  rel=\"noopener\"><strong>&gt;&gt; Life of a Netflix Partner Engineer \u2014 The case of the extra 40 ms<\/strong><\/a> [<span style=\"color: #800000\">netflixtechblog.com<\/span>]<\/li>\n<li><a href=\"https:\/\/netflixtechblog.com\/supporting-content-decision-makers-with-machine-learning-995b7b76006f\"  rel=\"noopener\"><strong>&gt;&gt; Supporting content decision makers with machine learning<\/strong><\/a> [<span style=\"color: #800000\">netflixtechblog.com<\/span>]<\/li>\n<li><a href=\"https:\/\/lizkeogh.com\/2020\/12\/11\/how-agile-manages-out-innovation\/\"  rel=\"noopener\"><strong>&gt;&gt; How Agile Manages Out Innovation<\/strong><\/a> [<span style=\"color: #800000\">lizkeogh.com<\/span>]<\/li>\n<li><a href=\"https:\/\/daedtech.com\/it-turns-out-your-prospects-dont-like-when-you-assume-theyre-stupid\/\"  rel=\"noopener\"><strong>&gt;&gt; It Turns Out Your Prospects Don\u2019t Like When You Assume They\u2019re Stupid<\/strong><\/a> [<span style=\"color: #800000\">daedtech.com<\/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\/2020-12-10\"  rel=\"noopener\"><strong>&gt;&gt; Pick Midpoint<\/strong><\/a> [<span style=\"color: #800000\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2020-12-13\"  rel=\"noopener\"><strong>&gt;&gt; Assigning Dilbert To Project<\/strong><\/a> [<span style=\"color: #800000\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2020-12-15\"  rel=\"noopener\"><strong>&gt;&gt; Ted Reimagined More<\/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>And a view from the &#8220;other side&#8221;:<\/p>\n<p><a href=\"https:\/\/sive.rs\/how2hire\"><strong>&gt;&gt; How to hire a programmer to make your ideas happen<\/strong><\/a> [<span style=\"color: #993300\">sive.rs<\/span>]<\/p>\n<p>The post <a href=\"https:\/\/www.baeldung.com\/java-weekly-364\/\" >Java Weekly, Issue 364<\/a> first appeared on <a href=\"https:\/\/www.baeldung.com\/\" >Baeldung<\/a>.<\/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>The one with performance: HotSpot JVM intrinsics, AppCDS with jLink, gRPC meets Kotlin, Maven&#8217;s speed daemon, JDBC&#8217;s statement caching, and Apple&#8217;s M1!\u00a0<a href=\"https:\/\/www.baeldung.com\/java-weekly-364\" title=\"Java Weekly, Issue 364\" class=\"more\">&gt;&gt;&gt;<\/a><\/p>\n<p>The post <a href=\"https:\/\/www.baeldung.com\/java-weekly-364\/\" target=\"_blank\" rel=\"noopener noreferrer\">Java Weekly, Issue 364<\/a> first appeared on <a href=\"https:\/\/www.baeldung.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Baeldung<\/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 364 - ITTeacherITFreelance.hk","description":"The one with performance: HotSpot JVM intrinsics, AppCDS with jLink, gRPC meets Kotlin, Maven's speed daemon, JDBC's statement caching, and Apple's M1!\u00a0 &gt;&gt"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/148213"}],"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=148213"}],"version-history":[{"count":4,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/148213\/revisions"}],"predecessor-version":[{"id":167916,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/148213\/revisions\/167916"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=148213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=148213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=148213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}