Java News Roundup: Grails 6.0, PrimeFaces 13.0, JUnit 5.10, GraalVM, TornadoVM, New JEP Drafts
This week's Java roundup for July 24th, 2023 features news from OpenJDK, JDK 22, JDK 21, GraalVM Community Components 23.0.1, Spring Cloud 2022.0.4, Spring Security and Spring Shell point releases, Grails 6.0, TornadoVM 0.15.2, Liberica NIK 23.0.1, PrimeFaces 13.0, Quarkus 3.2.2, Hibernate Reactive 2.0.4, Micronaut 4.0.2, JBang 0.110, JHipster Lite 0.39, JUnit 5.10 and Gradle 8.3-RC2.
By Michael Redlich
Read: https://www.infoq.com/news/2023/07/java-news-roundup-jul24-2023/
This week's Java roundup for July 24th, 2023 features news from OpenJDK, JDK 22, JDK 21, GraalVM Community Components 23.0.1, Spring Cloud 2022.0.4, Spring Security and Spring Shell point releases, Grails 6.0, TornadoVM 0.15.2, Liberica NIK 23.0.1, PrimeFaces 13.0, Quarkus 3.2.2, Hibernate Reactive 2.0.4, Micronaut 4.0.2, JBang 0.110, JHipster Lite 0.39, JUnit 5.10 and Gradle 8.3-RC2.
By Michael Redlich
Read: https://www.infoq.com/news/2023/07/java-news-roundup-jul24-2023/
Шпаргалка по структурам данных в Java
К каждому собеседованию важно готовиться и проще всего это делать, когда перед глазами есть готовый материал. В данной публикации я хочу поделиться с вами своей шпаргалкой, которую использую перед собеседованиями для повторения структур данных в Java.
Читать: https://habr.com/ru/articles/751648/?utm_campaign=751648
К каждому собеседованию важно готовиться и проще всего это делать, когда перед глазами есть готовый материал. В данной публикации я хочу поделиться с вами своей шпаргалкой, которую использую перед собеседованиями для повторения структур данных в Java.
Читать: https://habr.com/ru/articles/751648/?utm_campaign=751648
👍4
How to read CSV file in Java without using a third-party library? FileReader Example Tutorial
Hello guys, as you learn Java, one thing that comes up early and often is reading from/ writing to files, and doing something useful with that data. This is also one thing which you will keep doing and also forgetting very soon, if you are not then you have good memory as I always forget it and then I do google search to find my own articles. If you read this blog then you know that in the past, I have shared how to load CSV file using OpenCSV library as well how to load a CSV file with header using Jackson but a lot of you asked me how to do this without using any third party library like Jackson or OpenCSV. So, I thought to write about this article and I actually written but forgot to publish it for a long time. But I today I found it and publishing it now, it still works well.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/08/how-to-read-csv-file-in-java-without.html
Hello guys, as you learn Java, one thing that comes up early and often is reading from/ writing to files, and doing something useful with that data. This is also one thing which you will keep doing and also forgetting very soon, if you are not then you have good memory as I always forget it and then I do google search to find my own articles. If you read this blog then you know that in the past, I have shared how to load CSV file using OpenCSV library as well how to load a CSV file with header using Jackson but a lot of you asked me how to do this without using any third party library like Jackson or OpenCSV. So, I thought to write about this article and I actually written but forgot to publish it for a long time. But I today I found it and publishing it now, it still works well.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/08/how-to-read-csv-file-in-java-without.html
Разница между загрузкой и инициализацией классов в Java на любопытном примере
Привет, сегодняшняя статья будет о некоторых тонкостях загрузки и инициализации классов и немного о производительности (совсем чуть-чуть и в самом конце).
Поводом для написания статьи стал вопрос на StackOverflow. Откройте, но не торопитесь читать ответ ;)
Читать: https://habr.com/ru/articles/740156/?utm_campaign=740156
Привет, сегодняшняя статья будет о некоторых тонкостях загрузки и инициализации классов и немного о производительности (совсем чуть-чуть и в самом конце).
Поводом для написания статьи стал вопрос на StackOverflow. Откройте, но не торопитесь читать ответ ;)
Читать: https://habr.com/ru/articles/740156/?utm_campaign=740156
Одна из возможных версий переезда с MySQL на PostgreSQL
В этой статье я расскажу, какие подводные камни ждали команду разработки бэкенда служебных мобильных приложений одного банка, решившей мигрировать с MySQL на PostgreSQL.
Читать: https://habr.com/ru/articles/742552/?utm_campaign=742552
В этой статье я расскажу, какие подводные камни ждали команду разработки бэкенда служебных мобильных приложений одного банка, решившей мигрировать с MySQL на PostgreSQL.
Читать: https://habr.com/ru/articles/742552/?utm_campaign=742552
👍2
Ребят, ищем пишущего IT-редактора блогов в Tproger
Условия: удалёнка, фултайм
Что делать:
— искать темы, которые понравятся клиентам и заинтересуют читателей;
— вникать в эти темы настолько, чтобы говорить с экспертами примерно на одном языке;
— проводить интервью и собирать фактуру;
— превращать фактуру в статью, которую захочется читать и репостить;
— дорабатывать статью вместе с экспертами и менеджерами клиента.
Требования:
— пишете логично и ёмко, видите стилистические и речевые ошибки в тексте;
— быстро находите и проверяете информацию (в том числе в англоязычных источниках);
— любите общаться с экспертами и умеете их разговорить;
— спокойно реагируете на комментарии, но можете отстоять свою позицию, если правка неуместна;
— тактично вносите правки, чтобы автор не расстраивался, а был благодарен за помощь;
— знаете, что такое ключевое слово, мета-описание и зачем нужен Wordstat.
Чтобы откликнуться, заполняйте анкету.
#вакансии #работа
Условия: удалёнка, фултайм
Что делать:
— искать темы, которые понравятся клиентам и заинтересуют читателей;
— вникать в эти темы настолько, чтобы говорить с экспертами примерно на одном языке;
— проводить интервью и собирать фактуру;
— превращать фактуру в статью, которую захочется читать и репостить;
— дорабатывать статью вместе с экспертами и менеджерами клиента.
Требования:
— пишете логично и ёмко, видите стилистические и речевые ошибки в тексте;
— быстро находите и проверяете информацию (в том числе в англоязычных источниках);
— любите общаться с экспертами и умеете их разговорить;
— спокойно реагируете на комментарии, но можете отстоять свою позицию, если правка неуместна;
— тактично вносите правки, чтобы автор не расстраивался, а был благодарен за помощь;
— знаете, что такое ключевое слово, мета-описание и зачем нужен Wordstat.
Чтобы откликнуться, заполняйте анкету.
#вакансии #работа
Как VMware создала проблему, а мы ее решили
Недавно в нашу компанию «Инфосистемы Джет» пришел заказчик с проблемой долгой реализации создаваемых портов на NSX-T (до 2 минут до момента запуска трафика). Основная боль заключалась в том, что новые поды K8s не всегда укладывались в timeout Health Check'a и процесс начинался опять.
Исходные данные у нас были такие. NSX использовался для построения микросегментированной сети в кластерах Kybernetes + Kyverno. Взаимодействие K8s и NSX было реализовано при помощи плагина VMware NCP. Несмотря на большое количество объектов, в интерфейсе все метрики по утилизации были в «зеленых» значениях, но ощущалось сильное замедление работы UI.
Читать: https://habr.com/ru/companies/jetinfosystems/articles/752234/?utm_campaign=752234
Недавно в нашу компанию «Инфосистемы Джет» пришел заказчик с проблемой долгой реализации создаваемых портов на NSX-T (до 2 минут до момента запуска трафика). Основная боль заключалась в том, что новые поды K8s не всегда укладывались в timeout Health Check'a и процесс начинался опять.
Исходные данные у нас были такие. NSX использовался для построения микросегментированной сети в кластерах Kybernetes + Kyverno. Взаимодействие K8s и NSX было реализовано при помощи плагина VMware NCP. Несмотря на большое количество объектов, в интерфейсе все метрики по утилизации были в «зеленых» значениях, но ощущалось сильное замедление работы UI.
Читать: https://habr.com/ru/companies/jetinfosystems/articles/752234/?utm_campaign=752234
❤1
JavaDoc: добро или необходимое зло?
Привет! Меня зовут Андрей Костров, я старший разработчик в X5 Tech.
При создании проекта А мы вложили много сил в JavaDoc. Многим казалось это излишним. Затем проект А заморозили и начали новый – проект Б. При этом переиспользовали много кода из проекта А, вместе с JavaDoc. Рассказ о том, принёс ли JavaDoc пользу (спойлер: да). А также немного слов о том, где усилия по JavaDoc всё-таки были избыточны.
Читать: https://habr.com/ru/companies/X5Tech/articles/752338/?utm_campaign=752338
Привет! Меня зовут Андрей Костров, я старший разработчик в X5 Tech.
При создании проекта А мы вложили много сил в JavaDoc. Многим казалось это излишним. Затем проект А заморозили и начали новый – проект Б. При этом переиспользовали много кода из проекта А, вместе с JavaDoc. Рассказ о том, принёс ли JavaDoc пользу (спойлер: да). А также немного слов о том, где усилия по JavaDoc всё-таки были избыточны.
Читать: https://habr.com/ru/companies/X5Tech/articles/752338/?utm_campaign=752338
👍2👎1
Top 10 Courses to Learn System Design and Software Architecture in 2023 - Best of Lot
Software design or System design is one of the tricky concepts to master. You
can quickly learn a programming language like Java or Python, but creating software using that programming language is a totally
different thing. That's where software design and coding skills come to the
rescue. It's actually an art to structure your program, design your modules,
specify boundaries and interactions with other parts of the system so that
they are easier to read, maintain, and flexible to change. It's one of the
most essential skills for a software developer
but often gets ignored. If you look for an online course to learn Software
design and architecture, you won't find many, forget about good ones.
Java Interview questions and tutorials
Read: http://www.java67.com/2019/09/top-5-courses-to-learn-system-design.html
Software design or System design is one of the tricky concepts to master. You
can quickly learn a programming language like Java or Python, but creating software using that programming language is a totally
different thing. That's where software design and coding skills come to the
rescue. It's actually an art to structure your program, design your modules,
specify boundaries and interactions with other parts of the system so that
they are easier to read, maintain, and flexible to change. It's one of the
most essential skills for a software developer
but often gets ignored. If you look for an online course to learn Software
design and architecture, you won't find many, forget about good ones.
Java Interview questions and tutorials
Read: http://www.java67.com/2019/09/top-5-courses-to-learn-system-design.html
👍1
Чашечка Java
Photo
Differences between OAuth 2.0 and JWT (JSON Web Token)
Hello guys, both OAuth 2.0 and JWT (JSON Web Tokens) are two widely
used authentication and authorization protocols in modern web
applications. While both serve similar purposes, there are some key
differences between the two that are important to understand, which we will see in this article. This is also an important interview question and if you are preparing for Java and Microservices developer interviews, it's better to know how this two technology works and what are the key differences between then. In short, OAuth 2.0 is primarily used for authorization, whereas JWT is primarily used for authentication. OAuth 2.0 uses access tokens, whereas JWT is a self-contained token. OAuth 2.0 has a complex authorization flow, whereas JWT has a simple flow. OAuth 2.0 provides better security as it reduces the risk of unauthorized access to protected resources, while JWT can be intercepted if not properly secured. OAuth 2.0 access tokens are short-lived and need to be refreshed periodically, whereas JWTs do not expire.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/06/differences-between-oauth-20-and-jwt.html
Hello guys, both OAuth 2.0 and JWT (JSON Web Tokens) are two widely
used authentication and authorization protocols in modern web
applications. While both serve similar purposes, there are some key
differences between the two that are important to understand, which we will see in this article. This is also an important interview question and if you are preparing for Java and Microservices developer interviews, it's better to know how this two technology works and what are the key differences between then. In short, OAuth 2.0 is primarily used for authorization, whereas JWT is primarily used for authentication. OAuth 2.0 uses access tokens, whereas JWT is a self-contained token. OAuth 2.0 has a complex authorization flow, whereas JWT has a simple flow. OAuth 2.0 provides better security as it reduces the risk of unauthorized access to protected resources, while JWT can be intercepted if not properly secured. OAuth 2.0 access tokens are short-lived and need to be refreshed periodically, whereas JWTs do not expire.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/06/differences-between-oauth-20-and-jwt.html
👍3
Опыт Сдачи: Oracle Certified Professional: Java SE 11 Developer 1Z0-819
Всем Привет. Публикация для тех кто планирует сдавать OCP от Oracle. Подобных постов великое множество, как и материалов, но я решил написать пост о своем опыте сдачи этой сертификации.
Сдавал я сертификацию на Java SE 11 чуть более года назад. Тогда была уже доступен экзамен на Java SE 17, но насколько я помню отредактированных книг и мок тестов еще не было, поэтому я решил сдать именно на 11-ую Java.
Вообще насколько мне известно до сих пор доступен экзамен и на Java SE 8, но он по-прежнему состоит из OCA + OCP, хотя его значительно упростили с годами уменьшив количество вопросов.
Читать: https://habr.com/ru/articles/752350/?utm_campaign=752350
Всем Привет. Публикация для тех кто планирует сдавать OCP от Oracle. Подобных постов великое множество, как и материалов, но я решил написать пост о своем опыте сдачи этой сертификации.
Сдавал я сертификацию на Java SE 11 чуть более года назад. Тогда была уже доступен экзамен на Java SE 17, но насколько я помню отредактированных книг и мок тестов еще не было, поэтому я решил сдать именно на 11-ую Java.
Вообще насколько мне известно до сих пор доступен экзамен и на Java SE 8, но он по-прежнему состоит из OCA + OCP, хотя его значительно упростили с годами уменьшив количество вопросов.
Читать: https://habr.com/ru/articles/752350/?utm_campaign=752350
👍1
Разыскивается Senior/ Lead Java разработчик
Компания АО «Гринатом» ищет себе в команду крутого специалиста для работы над продуктом для HR-автоматизации на российском IT-рынке!
Стек проекта: Java 17, Spring, Kafka, GraphQL, PostgreSQL, Redis, Zeebe
Если вы хотите помочь сделать процесс найма сотрудников еще лучше и при этом получать хорошую заработную плату, разрабатывая продукт, которым в будущем будут пользоваться миллионы, то переходите по ссылке. Там подробности, условия и возможность оставить отклик.
#вакансия
Компания АО «Гринатом» ищет себе в команду крутого специалиста для работы над продуктом для HR-автоматизации на российском IT-рынке!
Стек проекта: Java 17, Spring, Kafka, GraphQL, PostgreSQL, Redis, Zeebe
Если вы хотите помочь сделать процесс найма сотрудников еще лучше и при этом получать хорошую заработную плату, разрабатывая продукт, которым в будущем будут пользоваться миллионы, то переходите по ссылке. Там подробности, условия и возможность оставить отклик.
#вакансия
👍2👎1
Top 10 Online Courses to Learn Data Structure and Algorithms in 2023 - Best of Lot
Hello guys, In the past, I have shared a lot of useful resources like books and tutorials to learn Data Structure and Algorithms for both beginners and experienced programmers. I have also shared a lot of Data Structure and Algorithmic interview questions like this and their solutions in Java. Still, I have got continuously queries about excellent online courses to learn Data Structure and Algorithms in Java. Even though the topics are completely independent with the programming language, Java developer definitely likes the online courses which teach Data Structure and Algorithms in Java, and that's why my recent post about best algorithms courses, which includes algorithms courses from JavaScript and Python didn't impress my readers.
Java Interview questions and tutorials
Read: http://www.java67.com/2019/07/top-10-online-courses-to-learn-data-structure-and-algorithms-in-java.html
Hello guys, In the past, I have shared a lot of useful resources like books and tutorials to learn Data Structure and Algorithms for both beginners and experienced programmers. I have also shared a lot of Data Structure and Algorithmic interview questions like this and their solutions in Java. Still, I have got continuously queries about excellent online courses to learn Data Structure and Algorithms in Java. Even though the topics are completely independent with the programming language, Java developer definitely likes the online courses which teach Data Structure and Algorithms in Java, and that's why my recent post about best algorithms courses, which includes algorithms courses from JavaScript and Python didn't impress my readers.
Java Interview questions and tutorials
Read: http://www.java67.com/2019/07/top-10-online-courses-to-learn-data-structure-and-algorithms-in-java.html
How to log messages to File and Console in Java using Log4j? Example Tutorial
Hello guys, if you are wondering how to use a logging library like Log4j or SLF4j in Java then you have come to the right place. In this tutorial, you will learn how to implement logging in your Java program using the Log4j library. Log4j is a Java based open source library from Apache Software Foundation, which is widely used for logging messages in Java applications. In order to use log4j in your application, you first need to download log4j.jar files from https://logging.apache.org/log4j/2.x/download.html site. You can download either the zip version or the tar version depending upon whether you are running your Java program in UNIX or Windows. If you are using Maven then you can also add the following dependency in your pom.xml file and Maven will take care of downloading JAR files.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/08/how-log-messages-to-file-and-console-in.html
Hello guys, if you are wondering how to use a logging library like Log4j or SLF4j in Java then you have come to the right place. In this tutorial, you will learn how to implement logging in your Java program using the Log4j library. Log4j is a Java based open source library from Apache Software Foundation, which is widely used for logging messages in Java applications. In order to use log4j in your application, you first need to download log4j.jar files from https://logging.apache.org/log4j/2.x/download.html site. You can download either the zip version or the tar version depending upon whether you are running your Java program in UNIX or Windows. If you are using Maven then you can also add the following dependency in your pom.xml file and Maven will take care of downloading JAR files.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/08/how-log-messages-to-file-and-console-in.html
How to use Deque Data Structure in Java? Example Tutorial
Hello friends, I am really glad to see you all again here. And I know you are
here to learn new and valuable Java concepts and continue your journey on
Java. Today we are gonna learn something that is really important
logically. yes! you heard right, we are going to learn about Deque data structure in Javaand how to use Deque in the Java program.
Deque is a special data structure, a double-ended queue that allows you to
process elements at both ends, I mean you can add and remove objects from both
front and rear end. It's a short form of Double-Ended Queue and pronounced as
"Deck".
Java Interview questions and tutorials
Read: http://www.java67.com/2021/11/how-to-use-deque-in-java-example.html
Hello friends, I am really glad to see you all again here. And I know you are
here to learn new and valuable Java concepts and continue your journey on
Java. Today we are gonna learn something that is really important
logically. yes! you heard right, we are going to learn about Deque data structure in Javaand how to use Deque in the Java program.
Deque is a special data structure, a double-ended queue that allows you to
process elements at both ends, I mean you can add and remove objects from both
front and rear end. It's a short form of Double-Ended Queue and pronounced as
"Deck".
Java Interview questions and tutorials
Read: http://www.java67.com/2021/11/how-to-use-deque-in-java-example.html
❤1
Чашечка Java
Photo
What is Backend for front-end pattern in Microservices? How to use it? Example Tutorial
Hello guys, as Organizations embrace Microservices architecture, the need for efficient communication and collaboration between front-end and back-end teams becomes crucial. To address this, theBackend for Front-End (BFF) pattern has emerged as a valuable approach. BFF pattern allows front-end developers to have dedicated back-end services that cater specifically to their needs, enabling them to build user interfaces more effectively. In the past, I have shared several Microservices design patterns like Event Sourcing, SAGA, Database Per Microservices, CQRS, API Gateway, Aggregator Design Pattern, and also shared best practices to design Microservices and in this article, I am going to talk about the Backend for Front-End pattern entails and how to effectively utilize it in microservices architecture.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/07/what-is-backend-for-front-end-pattern.html
Hello guys, as Organizations embrace Microservices architecture, the need for efficient communication and collaboration between front-end and back-end teams becomes crucial. To address this, theBackend for Front-End (BFF) pattern has emerged as a valuable approach. BFF pattern allows front-end developers to have dedicated back-end services that cater specifically to their needs, enabling them to build user interfaces more effectively. In the past, I have shared several Microservices design patterns like Event Sourcing, SAGA, Database Per Microservices, CQRS, API Gateway, Aggregator Design Pattern, and also shared best practices to design Microservices and in this article, I am going to talk about the Backend for Front-End pattern entails and how to effectively utilize it in microservices architecture.
Java Interview questions and tutorials
Read: http://www.java67.com/2023/07/what-is-backend-for-front-end-pattern.html
Свойство типа Controller Service в кастомном процессоре NiFi
В этой короткой статье я хочу показать, как использовать в качестве одного из свойств кастомного процессора NiFi стандартную службу Controller Service, а также как написать тест для такого процессора.В качестве примера будем использовать стандартную службу SSLContextService.
Читать: https://habr.com/ru/articles/752690/?utm_campaign=752690
В этой короткой статье я хочу показать, как использовать в качестве одного из свойств кастомного процессора NiFi стандартную службу Controller Service, а также как написать тест для такого процессора.В качестве примера будем использовать стандартную службу SSLContextService.
Читать: https://habr.com/ru/articles/752690/?utm_campaign=752690
👍2
Использование Kotlin и WebFlux для выполнения задач ML в Apache Spark на GPU
В предыдущей статье для создания Spark Driver приложения использовался сервлетный стек Spring (Boot 2.7.11) и JDK 8.
На дворе вторая половина 2023 года, у многих в проде уже используется Boot 3+ (а то и 3.1+), совсем скоро должна выйти новая LTS версия Java, и, мягко говоря, Boot 2+ и JDK8 устарели. Использовались они намеренно, так как для задач тренировки моделей машинного обучения на GPU в среде Spark частью системы является ускоритель вычислений на GPU NVidia Rapids. Поддержка JDK 17 появилась только в релизе v23.06.0 от 27.06.23, с ее выходом появилась возможность перейти на актуальную LTS версию Java, а с ней - на Spring Boot 3+.
В данной статье описывается миграция с Boot 2 и JDK 8 До Boot 3 и JDK 17, со Spring Web на Spring WebFlux, в конце сравниваются Web и WebFlux версии по потреблению аппаратных ресурсов и скорости выполнения.
Читать: https://habr.com/ru/articles/752702/?utm_campaign=752702
В предыдущей статье для создания Spark Driver приложения использовался сервлетный стек Spring (Boot 2.7.11) и JDK 8.
На дворе вторая половина 2023 года, у многих в проде уже используется Boot 3+ (а то и 3.1+), совсем скоро должна выйти новая LTS версия Java, и, мягко говоря, Boot 2+ и JDK8 устарели. Использовались они намеренно, так как для задач тренировки моделей машинного обучения на GPU в среде Spark частью системы является ускоритель вычислений на GPU NVidia Rapids. Поддержка JDK 17 появилась только в релизе v23.06.0 от 27.06.23, с ее выходом появилась возможность перейти на актуальную LTS версию Java, а с ней - на Spring Boot 3+.
В данной статье описывается миграция с Boot 2 и JDK 8 До Boot 3 и JDK 17, со Spring Web на Spring WebFlux, в конце сравниваются Web и WebFlux версии по потреблению аппаратных ресурсов и скорости выполнения.
Читать: https://habr.com/ru/articles/752702/?utm_campaign=752702