{"id":30397,"date":"2020-05-18T06:29:15","date_gmt":"2020-05-18T06:29:15","guid":{"rendered":"https:\/\/www.baeldung.com\/?p=79825"},"modified":"2020-05-18T06:29:15","modified_gmt":"2020-05-18T06:29:15","slug":"java-weekly-issue-334","status":"publish","type":"post","link":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/2020\/05\/18\/java-weekly-issue-334\/","title":{"rendered":"Java Weekly, Issue 334"},"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<h4><a href=\"https:\/\/blog.codeleak.pl\/2020\/05\/switch-as-an-expression-in-java.html\"><strong>&gt;&gt; Switch as an expression in Java with Lambda-like syntax <\/strong><\/a>[<span style=\"color: #800000\">blog.codeleak.pl<\/span>]<\/h4>\n<p>A quick guide that shows how to <strong>return a value from a Java 14 switch expression<\/strong>.<\/p>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/13\/introduction-to-azure-spring-cloud-with-intellij-idea\"><strong>&gt;&gt; Introduction to Azure Spring Cloud with IntelliJ IDEA<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<p>A few tools available in IntelliJ to <strong>accelerate Spring Cloud microservice development and deployment<\/strong> to Azure.<\/p>\n<h4><a href=\"https:\/\/www.mscharhag.com\/java\/records\"><strong>&gt;&gt; Looking at Java Records<\/strong><\/a> [<span style=\"color: #800000\">mscharhag.com<\/span>]<\/h4>\n<p>And a few cool use cases for the <em>Record<\/em> type, including composite map keys, and <strong>how to write a compact constructor<\/strong>.<\/p>\n<h4><strong>Also worth reading:<\/strong><\/h4>\n<ul>\n<li>\n<h4><a href=\"https:\/\/rieckpil.de\/whats-new-in-spring-boot-2-3\/\"><strong>&gt;&gt; What\u2019s new in Spring Boot 2.3 (Java 14, OCI images, etc.)<\/strong><\/a> [<span style=\"color: #800000\">rieckpil.de<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/news\/2020\/05\/java-leyden\/\"><strong>&gt;&gt; Project Leyden Aims to Improve Java Startup Time<\/strong><\/a> [<span style=\"color: #800000\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/18\/what-s-new-in-spring-data-klara-dan-von-neumann\"><strong>&gt;&gt; What&#8217;s new in Spring Data (Klara Dan von) Neumann?<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.codeleak.pl\/2020\/05\/record-type-in-java.html\"><strong>&gt;&gt; Record type in Java<\/strong><\/a> [<span style=\"color: #800000\">blog.codeleak.pl<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blogs.oracle.com\/java\/our-world-moved-by-java\"><strong>&gt;&gt; Our World. Moved by Java.<\/strong><\/a> [<span style=\"color: #800000\">blogs.oracle.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/vladmihalcea.com\/one-to-many-dto-projection-hibernate\/\"><strong>&gt;&gt; How to fetch a one-to-many DTO projection with JPA and Hibernate<\/strong><\/a> [<span style=\"color: #800000\">vladmihalcea.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/reflectoring.io\/aws-cloudformation-rds\/\"><strong>&gt;&gt; The AWS Journey Part 3: Connecting a Spring Boot Application to an RDS Instance with CloudFormation<\/strong><\/a> [<span style=\"color: #800000\">reflectoring.io<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<p><strong>Webinars and presentations:<\/strong><\/p>\n<ul>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/threat-assessment-frameworks\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"><strong>&gt;&gt; How to Build More Secure Service Brokers<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/sdlc-pivotal-concourse-spinnaker\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"><strong>&gt;&gt; SDLC for Pivotal Platform Powered by Spring Initializr, Concourse, and Spinnaker<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/14\/vmware-coo-sanjay-poonen\"><strong>&gt;&gt; VMWare COO Sanjay Poonen<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/microservices-event-driven-arch-legacy\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"><strong>&gt;&gt; Getting Microservices and Legacy to Play Nicely Together with Event-Driven Architectures<\/strong><\/a> [<span style=\"color: #800000\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.infoq.com\/presentations\/micrometer-metrics\/?utm_campaign=infoq_content&#038;utm_source=infoq&#038;utm_medium=feed&#038;utm_term=Java\"><strong>&gt;&gt; Metrics for the Win: Using Micrometer to Understand Application Behavior<\/strong><\/a> [<span style=\"color: #800000\">infoq.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.sebastian-daschner.com\/entries\/neo4j-ogm-with-quarkus\"><strong>&gt;&gt; Neo4J OGM with Quarkus (Video)<\/strong><\/a> [<span style=\"color: #800000\">blog.sebastian-daschner.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/www.impactupgrade.com\/camel-http-apache-httpclient-and-retry-attempts\/\"><strong>&gt;&gt; camel-http, Apache HttpClient, and Retry Attempts <\/strong><\/a>[<span style=\"color: #800000\">impactupgrade.com<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<p><strong>Time to upgrade:<\/strong><\/p>\n<ul>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/15\/spring-boot-2-3-0-available-now\"><strong>&gt;&gt; Spring Boot 2.3.0 available now<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/12\/spring-data-neumann-goes-ga\"><strong>&gt;&gt; Spring Data Neumann goes GA<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/14\/spring-session-dragonfruit-release-released\"><strong>&gt;&gt; Spring Session Dragonfruit-RELEASE Released<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/spring.io\/blog\/2020\/05\/13\/cve-reports-published-for-spring-security\"><strong>&gt;&gt; CVE reports published for Spring Security<\/strong><\/a> [<span style=\"color: #800000\">spring.io<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<h2 data-id=\"technical\"><strong>2. Technical<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"technical\"><\/div>\n<h4><a href=\"https:\/\/blog.codecentric.de\/en\/2020\/05\/kick-start-your-microservice-project-with-jhipster\/\"><strong>&gt;&gt; Kick-start your microservice project with JHipster<\/strong><\/a> [<span style=\"color: #800000\">blog.codecentric.de<\/span>]<\/h4>\n<p>A solid overview of <strong>JHipster, a full-fledged application scaffolding and development platform<\/strong> that now covers both web applications and microservice architectures.<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li>\n<h4><a href=\"https:\/\/martinfowler.com\/articles\/branching-patterns.html#hotfix-branch\"><strong>&gt;&gt; Hotfix Branch<\/strong><\/a> [<span style=\"color: #800000\">martinfowler.com<\/span>] and\u00a0<a href=\"https:\/\/martinfowler.com\/articles\/branching-patterns.html#release-train\"><strong>&gt;&gt; Release Train<\/strong><\/a> [<span style=\"color: #800000\">martinfowler.com<\/span>] and\u00a0<a href=\"https:\/\/martinfowler.com\/articles\/branching-patterns.html#release-ready-mainline\"><strong>&gt;&gt; Release-Ready Mainline<\/strong><\/a> [<span style=\"color: #800000\">martinfowler.com<\/span>] and\u00a0<a href=\"https:\/\/martinfowler.com\/articles\/branching-patterns.html#experimental-branch\"><strong>&gt;&gt; Experimental Branch<\/strong><\/a> [<span style=\"color: #800000\">martinfowler.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"http:\/\/andresalmiray.com\/publishing-artifacts-to-maven-central-with-bintray-gradle\/\"><strong>&gt;&gt; Publishing artifacts to Maven Central with Bintray &#038; Gradle<\/strong><\/a> [<span style=\"color: #800000\">andresalmiray.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.frankel.ch\/automating-conference-submission-workflow\/2\/\"><strong>&gt;&gt; Automating a conference submission workflow: integrating the solution<\/strong><\/a> [<span style=\"color: #800000\">blog.frankel.ch<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/advancedweb.hu\/unit-testing-bash-scripts\/\"><strong>&gt;&gt; Unit testing Bash scripts<\/strong><\/a> [<span style=\"color: #800000\">advancedweb.hu<\/span>]<\/h4>\n<\/li>\n<\/ul>\n<h2 data-id=\"musings\"><strong>3. Musings<\/strong><\/h2>\n<div class=\"bd-anchor\" id=\"musings\"><\/div>\n<h4><a href=\"https:\/\/blog.thecodewhisperer.com\/permalink\/breaking-through-your-refactoring-rut\"><strong>&gt;&gt; Breaking Through Your Refactoring Rut<\/strong><\/a> [<span style=\"color: #800000\">blog.thecodewhisperer.com<\/span>]<\/h4>\n<p>The key involves <strong>repetitive deliberate practice and applying cognitive psychology&#8217;s chunking strategy<\/strong>.<\/p>\n<p><strong>Also worth reading:<\/strong><\/p>\n<ul>\n<li>\n<h4><a href=\"https:\/\/martinfowler.com\/articles\/agile-threat-modelling.html\"><strong>&gt;&gt; A Guide to Threat Modeling for Developers<\/strong><\/a> [<span style=\"color: #800000\">martinfowler.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/codewithoutrules.com\/2020\/05\/18\/job-search-skills\/\"><strong>&gt;&gt; To get a better programming job, explain your problem-solving skills<\/strong><\/a> [<span style=\"color: #800000\">codewithoutrules.com<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.codecentric.de\/en\/2020\/05\/manage-large-complex-projects-2020\/\"><strong>&gt;&gt; How NOT to manage large and complex projects in 2020<\/strong><\/a> [<span style=\"color: #800000\">blog.codecentric.de<\/span>]<\/h4>\n<\/li>\n<li>\n<h4><a href=\"https:\/\/blog.scottlogic.com\/2020\/05\/15\/beyond-covid.html\"><strong>&gt;&gt; Beyond COVID<\/strong><\/a> [<span style=\"color: #800000\">blog.scottlogic.com<\/span>]<\/h4>\n<\/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<h4><a href=\"https:\/\/dilbert.com\/strip\/2020-05-15\"><strong>&gt;&gt; No Interruptions At Home<\/strong><\/a> [<span style=\"color: #800000\">dilbert.com<\/span>]<\/h4>\n<h4><a href=\"https:\/\/dilbert.com\/strip\/2020-05-17\"><strong>&gt;&gt; Asok Meditates<\/strong><\/a> [<span style=\"color: #800000\">dilbert.com<\/span>]<\/h4>\n<h4><a href=\"https:\/\/dilbert.com\/strip\/2020-05-19\"><strong>&gt;&gt; No Lunch With You<\/strong><\/a> [<span style=\"color: #800000\">dilbert.com<\/span>]<\/h4>\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><span style=\"font-weight: 400\">An oldie but a goodie:\u00a0<\/span><\/p>\n<h4><a href=\"https:\/\/dannorth.net\/2010\/08\/30\/introducing-deliberate-discovery\/\"><b>&gt;&gt; Introducing Deliberate Discovery<\/b><\/a> [<span style=\"color: #993300\">dannorth.net<\/span>]<\/h4>\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>A guide to switch expressions in Java 14, and a great article explains how developers can overcome their aversion to refactoring through deliberate practice.&nbsp;<a href=\"https:\/\/www.baeldung.com\/java-weekly-334\" title=\"Java Weekly, Issue 334\">&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 334 - ITTeacherITFreelance.hk","description":"A guide to switch expressions in Java 14, and a great article explains how developers can overcome their aversion to refactoring through deliberate practice.&nb"},"footnotes":""},"categories":[6],"tags":[],"_links":{"self":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/30397"}],"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=30397"}],"version-history":[{"count":6,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/30397\/revisions"}],"predecessor-version":[{"id":48854,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/posts\/30397\/revisions\/48854"}],"wp:attachment":[{"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/media?parent=30397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/categories?post=30397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itteacheritfreelance.hk\/wordpress\/index.php\/wp-json\/wp\/v2\/tags?post=30397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}