Forwarded from Java Guru 🤓
Как отработает приведенный код?
Anonymous Quiz
11%
На строке 2 выбросится ArithmeticException
33%
Код отработает нормально, обе переменные получат корректные значения
36%
На строке 1 выбросится ArithmeticException
19%
Код не скомпилируется
👍24❤1
Jenkins 2. Приступаем к работе (2019) PDF
Книга посвящена Jenkins – программной системе с открытым исходным кодом на Java, предназначенной для обеспечения процесса непрерывной интеграции программного обеспечения. Автор показывает, насколько Jenkins 2 отличается от более традиционных версий этой популярной платформы автоматизации с открытым исходным кодом, предназначенных только для интернета. Если вы знакомы с Jenkins и хотите воспользоваться новыми технологиями для преобразования устаревших конвейеров или создания новых современных автоматизированных сред непрерывной доставки, эта книга – для вас.
Вы получите полное практическое руководство работы с контейнерами, изучите новый графический интерфейс Blue Ocean.
Издание будет полезно всем разработчикам программного обеспечения.
Книга посвящена Jenkins – программной системе с открытым исходным кодом на Java, предназначенной для обеспечения процесса непрерывной интеграции программного обеспечения. Автор показывает, насколько Jenkins 2 отличается от более традиционных версий этой популярной платформы автоматизации с открытым исходным кодом, предназначенных только для интернета. Если вы знакомы с Jenkins и хотите воспользоваться новыми технологиями для преобразования устаревших конвейеров или создания новых современных автоматизированных сред непрерывной доставки, эта книга – для вас.
Вы получите полное практическое руководство работы с контейнерами, изучите новый графический интерфейс Blue Ocean.
Издание будет полезно всем разработчикам программного обеспечения.
👍11
Java Persistence with Spring Data and Hibernate (Final Release) (2023) True PDF
Java Persistence with Spring Data and Hibernate explores persistence with the most popular available tools. You’ll benefit from detailed coverage of Spring Data JPA, Spring Data JDBC, Spring Data REST, JPA, and Hibernate, comparing and contrasting the alternatives so you can pick what’s best for your code. We’ll begin with a hands-on introduction to object/relational mapping (ORM) and then dive into mapping strategies for linking up objects and your database. You’ll learn about the different approaches to transactions in Hibernate and Spring Data, and even how to deliver Java persistence with non-relational databases. Finally, we’ll explore testing strategies for persistent applications to keep your code clean and bug free.
Java Persistence with Spring Data and Hibernate explores persistence with the most popular available tools. You’ll benefit from detailed coverage of Spring Data JPA, Spring Data JDBC, Spring Data REST, JPA, and Hibernate, comparing and contrasting the alternatives so you can pick what’s best for your code. We’ll begin with a hands-on introduction to object/relational mapping (ORM) and then dive into mapping strategies for linking up objects and your database. You’ll learn about the different approaches to transactions in Hibernate and Spring Data, and even how to deliver Java persistence with non-relational databases. Finally, we’ll explore testing strategies for persistent applications to keep your code clean and bug free.
👍15🔥6
Как перебрать элементы LinkedList в обратном порядке, не используя медленный get(index)?
Для этого в
Для этого в
LinkedList есть обратный итератор, который можно получить вызва метод descendingIterator().👍50
В данном видео автор покажет, как создать HTTP-сервер на чистой Java и на сокетах. Итоговое приложение будет раздавать файлы из указанной при запуске директории. В создании http-сервера на Java автор будет использовать только средства из стандартной библиотеки (Java SE), к примеру, сокеты (socket).
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Создание HTTP-сервера на Java
В данном видео я покажу, как создать HTTP-сервер на чистой Java и на сокетах. Итоговое приложение будет раздавать файлы из указанной при запуске директории. В создании http-сервера на Java я буду использовать только средства из стандартной библиотеки (Java…
👍31
Pro Kotlin Web Apps from Scratch: Building Production-Ready Web Apps Without a Framework (2023) PDF, ePUB
The book teaches the Kotlin language by building production-ready Kotlin code. You’ll gain a deep understanding of the idiomatic use of the Kotlin language along with knowledge of how to apply Kotlin in production-grade web apps. The book also bridges the gap between building from scratch and using existing frameworks. For example, you’ll learn how to integrate Spring Security-based authentication in web apps written from scratch, so you can leverage existing tooling in your organization without having to take on the entire Spring framework.
The first section of the book sets up the base structure of your web app, such as routing, configuration files, and database migrations. The remaining chapters are broken into individual aspects of building production-ready web apps.
The book teaches the Kotlin language by building production-ready Kotlin code. You’ll gain a deep understanding of the idiomatic use of the Kotlin language along with knowledge of how to apply Kotlin in production-grade web apps. The book also bridges the gap between building from scratch and using existing frameworks. For example, you’ll learn how to integrate Spring Security-based authentication in web apps written from scratch, so you can leverage existing tooling in your organization without having to take on the entire Spring framework.
The first section of the book sets up the base structure of your web app, such as routing, configuration files, and database migrations. The remaining chapters are broken into individual aspects of building production-ready web apps.
👍8
Stack считается «устаревшим». Чем его рекомендуют заменять? Почему?
Stack был добавлен в Java 1.0 как реализация стека LIFO (last-in-first-out) и является расширением коллекции Vector, хотя это несколько нарушает понятие стека (например, класс Vector предоставляет возможность обращаться к любому элементу по индексу). Является частично синхронизированной коллекцией (кроме метода добавления push()) с вытекающими отсюда последствиями в виде негативного воздействия на производительность. После добавления в Java 1.6 интерфейса Deque, рекомендуется использовать реализации именно этого интерфейса, например, ArrayDeque.👍43
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Java. Шифруем данные для открытой передачи.
Шифруем текст с использованием ключа данные для открытой передачи в GET для разных ситуаций. Не использовал secure библиотеки - по каким-то известным только мне тогдашнему причинам.
Если не охота заморачиватья с шифрованием - из комментария подписчика @Александр…
Если не охота заморачиватья с шифрованием - из комментария подписчика @Александр…
👍13
Зачем нужен HashMap, если есть Hashtable?
• Методы класса
•
•
Hashtable это устаревший класс и его использование не рекомендовано.
• Методы класса
Hashtable синхронизированы, что приводит к снижению производительности, а HashMap - нет;•
HashTable не может содержать элементы null, тогда как HashMap может содержать один ключ null и любое количество значений null;•
Iterator у HashMap, в отличие от Enumeration у HashTable, работает по принципу «fail-fast» (выдает исключение при любой несогласованности данных).Hashtable это устаревший класс и его использование не рекомендовано.
👍48
Forwarded from Java News
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ZGC: The Future of Low-Latency Garbage Collection Is Here
The Z Garbage Collector (ZGC) is a scalable low-latency garbage collector providing sub-millisecond max pause times. Get an overview of the design principles behind ZGC, how it performs, and how to best use it to reduce latency for your application. We also…
👍16🔥1
Шпаргалка по основам Java с примерами кода.
В ней есть всё, что может пригодиться начинающему разработчику.
Оригинал в хорошем качестве можно взять тут
В ней есть всё, что может пригодиться начинающему разработчику.
Оригинал в хорошем качестве можно взять тут
👍42🔥4
7 практических заданий с собеседования на позицию Junior Java Developer
Для начинающего разработчика очень важно не только знать теоретическую базу, но и понимать как все работает под «капотом», поэтому зачастую вопросы, задаваемые на собеседовании, не только проверяют теоретические знания, но и способность их применить.
Читать статью
Для начинающего разработчика очень важно не только знать теоретическую базу, но и понимать как все работает под «капотом», поэтому зачастую вопросы, задаваемые на собеседовании, не только проверяют теоретические знания, но и способность их применить.
Читать статью
👍26🔥5❤1💯1
Full stack development with Spring Boot and React : build modern and scalable full stack applications using the power of Spring Boot and React (2022) PDF
Getting started with full stack development can be daunting. Even developers who are familiar with the best tools, such as Spring Boot and React, can struggle to nail the basics, let alone master the more advanced elements. If you're one of these developers, this comprehensive guide covers everything you need!
This updated edition of the Full Stack Development with Spring Boot 2 and React book will take you from novice to proficient in this expansive domain. Taking a practical approach, this book will first walk you through the latest Spring Boot features for creating a robust backend, covering everything from setting up the environment and dependency injection to security and testing.
Getting started with full stack development can be daunting. Even developers who are familiar with the best tools, such as Spring Boot and React, can struggle to nail the basics, let alone master the more advanced elements. If you're one of these developers, this comprehensive guide covers everything you need!
This updated edition of the Full Stack Development with Spring Boot 2 and React book will take you from novice to proficient in this expansive domain. Taking a practical approach, this book will first walk you through the latest Spring Boot features for creating a robust backend, covering everything from setting up the environment and dependency injection to security and testing.
👍12🔥2
В чем разница между HashMap и WeakHashMap? Для чего используется WeakHashMap?
В
В качестве примера использования такой структуры данных можно привести следующую ситуацию: допустим имеются объекты, которые необходимо расширить дополнительной информацией, при этом изменение класса этих объектов нежелательно либо невозможно. В этом случае добавляем каждый объект в
В
Java существует 4 типа ссылок: сильные (strong reference), мягкие (SoftReference), слабые (WeakReference) и фантомные (PhantomReference). Особенности каждого типа ссылок связаны с работой Garbage Collector. Если объект можно достичь только с помощью цепочки WeakReference (то есть на него отсутствуют сильные и мягкие ссылки), то данный объект будет помечен на удаление.WeakHashMap - это структура данных, реализующая интерфейс Map и основанная на использовании WeakReference для хранения ключей. Таким образом, пара «ключ-значение» будет удалена из WeakHashMap, если на объект-ключ более не имеется сильных ссылок.В качестве примера использования такой структуры данных можно привести следующую ситуацию: допустим имеются объекты, которые необходимо расширить дополнительной информацией, при этом изменение класса этих объектов нежелательно либо невозможно. В этом случае добавляем каждый объект в
WeakHashMap в качестве ключа, а в качестве значения - нужную информацию. Таким образом, пока на объект имеется сильная ссылка (либо мягкая), можно проверять хэш-таблицу и извлекать информацию. Как только объект будет удален, то WeakReference для этого ключа будет помещен в ReferenceQueue и затем соответствующая запись для этой слабой ссылки будет удалена из WeakHashMap.👍45
👍19🎅4☃3💯3❤🔥2🔥2
Идеальная работа. Программирование без прикрас (2022) PDF
В книге «Идеальная работа. Программирование без прикрас» легендарный Роберт Мартин (Дядюшка Боб) создал исчерпывающее руководство по хорошей работе для каждого программиста. Роберт Мартин объединяет дисциплины, стандарты и вопросы этики, необходимые для быстрой и продуктивной разработки надежного, эффективного кода, позволяющего испытывать гордость за программное обеспечение, которое вы создаете каждый день. Роберт Мартин, автор бестселлера «Чистый код», начинает с прагматического руководства по пяти основополагающим дисциплинам создания программного обеспечения: разработка через тестирование, рефакторинг, простой дизайн, совместное программирование и тесты. Затем он переходит к стандартам — обрисовывая ожидания «мира» от разработчиков программного обеспечения, рассказывая, как часто различаются эти подходы, и помогает вам устранить несоответствия.
В книге «Идеальная работа. Программирование без прикрас» легендарный Роберт Мартин (Дядюшка Боб) создал исчерпывающее руководство по хорошей работе для каждого программиста. Роберт Мартин объединяет дисциплины, стандарты и вопросы этики, необходимые для быстрой и продуктивной разработки надежного, эффективного кода, позволяющего испытывать гордость за программное обеспечение, которое вы создаете каждый день. Роберт Мартин, автор бестселлера «Чистый код», начинает с прагматического руководства по пяти основополагающим дисциплинам создания программного обеспечения: разработка через тестирование, рефакторинг, простой дизайн, совместное программирование и тесты. Затем он переходит к стандартам — обрисовывая ожидания «мира» от разработчиков программного обеспечения, рассказывая, как часто различаются эти подходы, и помогает вам устранить несоответствия.
👍22🔥5😁1
LinkedHashMap - что в нем от LinkedList, а что от HashMap?
Реализация
При добавлении элемента, который уже присутствует в
Реализация
LinkedHashMap отличается от HashMap поддержкой двухсвязанного списка, определяющего порядок итерации по элементам структуры данных. По умолчанию элементы списка упорядочены согласно их порядку добавления в LinkedHashMap (insertion-order). Однако порядок итерации можно изменить, установив параметр конструктора accessOrder в значение true. В этом случае доступ осуществляется по порядку последнего обращения к элементу (access-order). Это означает, что при вызове методов get() или put() элемент, к которому обращаемся, перемещается в конец списка.При добавлении элемента, который уже присутствует в
LinkedHashMap (т.е. с одинаковым ключом), порядок итерации по элементам не изменяется.👍29