Библиотека Java разработчика
10.8K subscribers
1.14K photos
563 videos
58 files
1.44K links
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate.


По всем вопросам @evgenycarter

РКН clck.ru/3KoGeP
Download Telegram
Объектно-ориентированное программирование на Java

Принципы объектно-ориентированного программирования
Описание класса и создание объектов в Java
Ключевое слово this в Java
Модификаторы классов, полей и методов в Java
Конструкторы в языке Java
Геттеры и сеттеры. Удаление объектов в Java
Объекты как параметры методов в Java
Переопределение методов класса Object
Пример решения задачи на создание класса в Java
Статические члены класса в Java

источник

👉@BookJava
👍3😁2
Media is too big
VIEW IN TELEGRAM
Прекрасный и ужасный ООП в Java
Денис Родин (Сбер)

Спикер рассмотрит:
1. Некоторые противоречия догм в ООП.
2. Отличия ООП Джеймса Гослинга (James Gosling) в Java от ООП Алана Кея (Alan Kay).
3. Рассуждения о «серебряной пуле».

источник

👉@BookJava
👍4🔥2
Media is too big
VIEW IN TELEGRAM
Spring Boot Tutorial | Полный курс

В этом учебном пособии по Spring Boot рассказывается о том, как начать работу с Spring Boot и Java.

00:00 Intro
01:00 Quick Word
02:12 Spring Boot Overview
03:44 Project Overview
04:28 Spring Initializr
08:05 IntelliJ
10:29 Starting The Server
14:03 Simple API with Spring Boot
18:06 Student Class
23:19 API Layer
26:38 Business Layer
29:08 Dependency Injection
32:47 Properties file
36:15 Creating and Connecting to Database
39:48 JPA and @ Entity
42:35 JPA in Action
45:52 Amigoscode Database Courses
47:35 JPA Repository
52:20 Saving Students
58:49 @ Transient
01:03:01 Post Mapping
01:08:00 Writing Business Logic
01:12:43 Testing Post Request
01:15:35 Deleting Students
01:21:33 Exercise
01:22:53 Solution
01:26:54 Testing
01:29:41 Packaging and Running Application
01:34:52 Next steps

источник

👉@BookJava
👍4🔥1
Совет💡

Будьте осторожны при использовании @AllArgsConstructor от Lombok. Для генерации конструктора он использует порядок полей в классе. Если поля имеют одинаковый тип и вы переставите их местами, то начнете писать в разные поля, и компилятор не сможет помочь.

👉@BookJava
👍14
Советы по Spring 💡

Создайте отказоустойчивый микросервис с помощью паттерна Circuit Breaker, используя Resilience4j. 🔥

https://resilience4j.readme.io/

👉@BookJava
👍6
Совет по Java 💡

Чтобы сделать большие и сложные цепочки компараторов более читаемыми, мне нравится присваивать компараторы переменным, имена которых начинаются с "by". Таким образом, вызов sorted() становится меньше и читается почти как естественный язык. Кроме того, вы можете использовать статический импорт.

👉@BookJava
👍17🔥2
Советы по Spring🚀

Ведение журнала HTTP-запросов с помощью фильтра CommonsRequestLoggingFilter.

Включите ведение журнала запросов с помощью фильтра CommonsRequestLoggingFilter для получения подробной информации о входящих запросах.

https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/filter/CommonsRequestLoggingFilter.html

#SpringTip #Java

👉@BookJava
👍6🎉3
Spring WebFlux с Server-Sent Events 🚀

Улучшите свои real-time приложения с помощью #SpringWebFlux и Server-Sent Events! 🔥

#Java #SpringFramework

👉@BookJava
🔥5👍2
Совет по Java 💡

При создании стандартных HTTP-заголовков для ответов Spring MVC, вместо того чтобы предоставлять их в виде строк, можно воспользоваться специальными билдерами. Они позволяют создавать заголовки более типобезопасным способом. Ознакомьтесь с методами `set()` класса `HttpHeaders`, которые можно настроить таким образом.

#Java #SpringFramework

👉@BookJava
👍61
Это очень подробный пост о проблеме, которую мы наблюдали в Virtual Threads с " pinning" в Netflix.

https://netflixtechblog.com/java-21-virtual-threads-dude-wheres-my-lock-3052540e231d

#Java #VirtualThreads

👉@BookJava
👍3
Совет по JPA 🚀

Упростите свои #Java модели данных, встраивая сложные типы непосредственно в ваши сущности с помощью аннотации
@Embedded в @JPA! Это идеально подходит для многократно используемых компонентов, таких как адреса. 🔥


#Hibernate #SpringBoot #JavaDevelopment #ORM

👉@BookJava
👍7
Совет по @SpringData

Если вы используете параметр hibernate.use_sql_comments, чтобы показать, какой запрос JPQL вызвал какой SQL запрос, вы можете дополнительно использовать аннотацию (@)Meta из Spring Data JPA, чтобы задать пользовательский комментарий для вашего JPQL запроса.

#Java

👉@BookJava
👍3🔥2🥰1
Адаптер (Adapter) — объект, обеспечивающий взаимодействие двух других объектов, один из которых использует, а другой предоставляет несовместимый с первым интерфейс.
Мост (Bridge) — структура, позволяющая изменять интерфейс обращения и интерфейс реализации класса независимо.
Компоновщик (Composite) — объект, который объединяет в себе объекты, подобные ему самому.
Декоратор (Decorator) — класс, расширяющий функциональность другого класса без использования наследования.
Фасад (Facade) — объект, который абстрагирует работу с несколькими классами, объединяя их в единое целое.
Приспособленец (Flyweight) — это объект, представляющий себя как уникальный экземпляр в разных местах программы, но по факту не являющийся таковым.
Заместитель (Proxy) — объект, который является посредником между двумя другими объектами, и который реализует/ограничивает доступ к объекту, к которому обращаются через него.

👉@BookJava
👍15
🚀 Совет по Java API 🚀

java.nio.file.WatchService - мониторинг событий файловой системы в реальном времени. Обнаружение изменений файлов и директорий независимо от платформы. 🔥

https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/nio/file/WatchService.html

#Java #JavaAPI

👉@BookJava
👍5🥱2