{"id":218631,"date":"2021-03-18T08:15:24","date_gmt":"2021-03-18T08:15:24","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=98954"},"modified":"2021-03-18T08:15:24","modified_gmt":"2021-03-18T08:15:24","slug":"java-weekly-issue-377","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2021\/03\/18\/java-weekly-issue-377\/","title":{"rendered":"Java Weekly, Issue 377"},"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:\/\/inside.java\/2021\/03\/16\/the-arrival-of-java16\/\"  rel=\"noopener\"><strong>&gt;&gt; The Arrival of Java 16!<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/span>]<\/p>\n<p><strong>Java 16 is released<\/strong>\u00a0\u2013 pattern matching, records, Unix-domain sockets, packaging tool, Vector API, and many more!<\/p>\n<p><a href=\"https:\/\/spring.io\/blog\/2021\/03\/11\/announcing-spring-native-beta\"  rel=\"noopener\"><strong>&gt;&gt; Announcing Spring Native Beta!<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/p>\n<p><strong>Building native images for Spring projects<\/strong>\u00a0\u2013 taking advantage of GraalVM native images in Spring projects with the Spring Native module!<\/p>\n<p><a href=\"https:\/\/blog.frankel.ch\/backpressure-reactive-systems\/\"  rel=\"noopener\"><strong>&gt;&gt; Backpressure in Reactive Systems<\/strong><\/a> [<span style=\"color: #800000;\">blog.frankel.ch<\/span>]<\/p>\n<p>An overview of <strong>backpressure in different implementations<\/strong>: RxJava, Project Reactor, and Kotlin Coroutines.<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li><a href=\"https:\/\/inside.java\/2021\/03\/12\/simpler-serilization-with-records\/\"  rel=\"noopener\"><strong>&gt;&gt; Simpler Serialization with Records<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/span>]<\/li>\n<li><a href=\"https:\/\/jdk.java.net\/16\/release-notes\"  rel=\"noopener\"><strong>&gt;&gt; JDK 16 Release Notes<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">jdk.java.net<\/span>]<\/li>\n<li><a href=\"https:\/\/tschatzl.github.io\/2021\/03\/12\/jdk16-g1-parallel-gc-changes.html\"  rel=\"noopener\"><strong>&gt;&gt; JDK 16 G1\/Parallel GC changes<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">tschatzl.github.io<\/span>]<\/li>\n<li><a href=\"https:\/\/webtide.com\/introducing-jetty-load-generator\/\"  rel=\"noopener\"><strong>&gt;&gt; Introducing Jetty Load Generator<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">webtide.com<\/span>]<\/li>\n<li><a href=\"https:\/\/security.googleblog.com\/2021\/03\/fuzzing-java-in-oss-fuzz.html\"  rel=\"noopener\"><strong>&gt;&gt; Fuzzing Java in OSS-Fuzz<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">security.googleblog.com<\/span>]<\/li>\n<li><strong><a href=\"https:\/\/benjiweber.co.uk\/blog\/2021\/03\/14\/java-16-pattern-matching-fun\/\"  rel=\"noopener\">&gt;&gt; Java 16 Pattern Matching Fun<\/a><\/strong> [<span style=\"color: #800000;\">benjiweber.co.uk<\/span>]<\/li>\n<li><a href=\"http:\/\/www.java-allandsundry.com\/2021\/03\/deriving-kotlin-try-type.html\"  rel=\"noopener\"><strong><span class=\"t-bg-white l-pa2 l-d-i\">&gt;&gt; Deriving a Kotlin &#8220;Try&#8221; type<\/span><\/strong><\/a><span class=\"t-bg-white l-pa2 l-d-i\"> [<span style=\"color: #800000;\">java-allandsundry.com<\/span>]<\/span><\/li>\n<li><a href=\"https:\/\/www.infoq.com\/articles\/testing-quarkus-reactive\/\"  rel=\"noopener\"><strong>&gt;&gt; Testing Quarkus Web Applications: Reactive Messaging, Kafka, and Testcontainers<\/strong><\/a> [<span style=\"color: #800000;\">infoq.com<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/03\/11\/deploy-spring-boot-applications-by-leveraging-enterprise-best-practices-azure-spring-cloud-reference-architecture\"  rel=\"noopener\"><strong>&gt;&gt; Deploy Spring Boot applications by leveraging enterprise best practices \u2013 Azure Spring Cloud Reference Architecture<\/strong><\/a> [<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/javarevisited.blogspot.com\/2021\/03\/top-dynamic-programming-problems-for-coding-interviews.html\"  rel=\"noopener\"><strong>&gt;&gt; Top 10 Dynamic Programming Problems for Coding Interviews<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">javarevisited.com<\/span>]<\/li>\n<\/ul>\n<p><strong>Webinars and presentations:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/inside.java\/2021\/03\/16\/podcast-015\/\"  rel=\"noopener\"><strong>&gt;&gt; Episode 15 \u201cJava 16 is Here!\u201d with Mikael Vidstedt<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/03\/11\/a-bootiful-podcast-ff4j-project-creator-and-datastax-astra-sdk-engineer-cedrick-lunven\"  rel=\"noopener\"><strong>&gt;&gt; A Bootiful Podcast: FF4J project creator and DataStax Astra SDK engineer Cedrick Lunven<\/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:\/\/spring.io\/blog\/2021\/03\/16\/spring-framework-5-3-5-available-now\"  rel=\"noopener\"><strong>&gt;&gt; Spring Framework 5.3.5 available now<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/03\/intellij-idea-2020-3-3\/\"  rel=\"noopener\"><strong>&gt;&gt; IntelliJ IDEA 2020.3.3 Is Available<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">blog.jetbrains.com<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/03\/15\/spring-security-5-5-0-m3-released\"  rel=\"noopener\"><strong>&gt;&gt; Spring Security 5.5.0-M3 Released<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/spring.io\/blog\/2021\/03\/17\/spring-data-2021-0-0-m5-2020-0-6-and-neumann-sr8-released\"  rel=\"noopener\"><strong>&gt;&gt; Spring Data 2021.0.0-M5, 2020.0.6, and Neumann SR8 released<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">spring.io<\/span>]<\/li>\n<li><a href=\"https:\/\/inside.java\/2021\/03\/16\/jmc-8-released\/\"  rel=\"noopener\"><strong>&gt;&gt; JDK Mission Control version 8.0.0 (JMC 8) is now available<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">inside.java<\/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:\/\/blog.codecentric.de\/en\/2021\/03\/github-actions-nextgen-cicd\/\"  rel=\"noopener\"><strong>&gt;&gt; Stop re-writing pipelines! Why GitHub Actions drive the future of CI\/CD<\/strong><\/a> [<span style=\"color: #800000;\">blog.codecentric.de<\/span>]<\/p>\n<p><strong>On different generations of CI\/CD platforms<\/strong>: reducing the boilerplate when creating CI\/CD pipelines!<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/advancedweb.hu\/how-serverless-cold-starts-change-best-practices\/\"  rel=\"noopener\"><strong>&gt;&gt; How serverless cold starts change best practices<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">advancedweb.hu<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.thecodewhisperer.com\/permalink\/how-to-write-tests-for-framework-extensions\"  rel=\"noopener\"><strong>&gt;&gt; How to Write Tests For Framework Extensions?<\/strong><\/a> [<span style=\"color: #800000;\">blog.thecodewhisperer.com<\/span>]<\/li>\n<li><a href=\"https:\/\/blog.jooq.org\/2021\/03\/11\/calculating-pagination-metadata-without-extra-roundtrips-in-sql\/\"  rel=\"noopener\"><strong>&gt;&gt; Calculating Pagination Metadata Without Extra Roundtrips in SQL<\/strong><\/a> [<span style=\"color: #800000;\">blog.jooq.org<\/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:\/\/dannorth.net\/2021\/03\/16\/cupid-the-back-story\/\"  rel=\"noopener\"><strong>&gt;&gt; CUPID \u2013 The Back Story<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dannorth.net<\/span>]<\/p>\n<p><strong>A critical take on SOLID principles<\/strong>: why SOLID principles aren&#8217;t a good fit for today&#8217;s standards and what are the alternatives!<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/queue.acm.org\/detail.cfm?id=3454124\"  rel=\"noopener\"><strong>&gt;&gt; The SPACE of Developer Productivity<\/strong><\/a> [<span style=\"color: #800000;\">queue.acm.org<\/span>]<\/li>\n<li><a href=\"https:\/\/netflixtechblog.medium.com\/words-matter-testing-copy-with-shakespeare-5df48b38158a\"  rel=\"noopener\"><strong>&gt;&gt; Words Matter: Testing Copy With Shakespeare<\/strong><\/a> [<span style=\"color: #800000;\">netflixtechblog.medium.com<\/span>]<\/li>\n<li><a href=\"https:\/\/netflixtechblog.medium.com\/data-engineers-of-netflix-interview-with-dhevi-rajendran-a9ab7c7b36e5\"  rel=\"noopener\"><strong>&gt;&gt; Data Engineers of Netflix \u2014 Interview with Dhevi Rajendran<\/strong><\/a> [<span style=\"color: #800000;\">netflixtechblog.medium.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\/2021-03-17\"  rel=\"noopener\"><strong>&gt;&gt; Non-Covid Cough<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2021-03-15\"  rel=\"noopener\"><strong>&gt;&gt; Closing Credits<\/strong><\/a>\u00a0[<span style=\"color: #800000;\">dilbert.com<\/span>]<\/p>\n<p><a href=\"https:\/\/dilbert.com\/strip\/2021-03-13\"  rel=\"noopener\"><strong>&gt;&gt; Disinfecting Keyboard<\/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><strong><a href=\"https:\/\/markmanson.net\/delayed-gratification\">&gt;&gt; The Virtue of Delayed Gratification<\/a> <\/strong>[<span style=\"color: #993300;\">markmanson.net<\/span>]<\/p>\n<p>The post <a href=\"https:\/\/www.baeldung.com\/java-weekly-377\">Java Weekly, Issue 377<\/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>Java 16 is released, official native images for Spring, backpressure, Jetty HTTP load generator, GitHub actions, and say no to SOLID!\u00a0<a href=\"https:\/\/www.baeldung.com\/java-weekly-377\" title=\"Java Weekly, Issue 377\" class=\"more\">&gt;&gt;&gt;<\/a><\/p>\n<p>The post <a href=\"https:\/\/www.baeldung.com\/java-weekly-377\">Java Weekly, Issue 377<\/a> first appeared on <a href=\"https:\/\/www.baeldung.com\/\">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 377 - ITTeacherITFreelance.hk","description":"Java 16 is released, official native images for Spring, backpressure, Jetty HTTP load generator, GitHub actions, and say no to SOLID!\u00a0 &gt;&gt;&gt; The post Jav"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/218631"}],"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=218631"}],"version-history":[{"count":3,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/218631\/revisions"}],"predecessor-version":[{"id":225014,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/218631\/revisions\/225014"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=218631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=218631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=218631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}