Библиотека 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
This media is not supported in your browser
VIEW IN TELEGRAM
Графический интерфейс для bash, делаем работу в командной строке удобнее

Когда пишешь код в IntelliJ IDEA, привыкаешь что везде есть подсказки, везде где можно работает комплишен, всегда можно одним кликом перейти на декларацию метода или на его юсаджи. После этого интерфейс командной строки выглядит как-то бедно. Конечно, он очень хорошо продуман, сделан настолько удобным, насколько это возможно в текстовом UI, но в графическом UI возможностей намного больше. Представляю вам плагин для JetBrains IDE, позволяющий работать в командной строке cо всеми удобствами IDE.

https://habr.com/ru/articles/715824/

👉@BookJava
👍5👎1
Media is too big
VIEW IN TELEGRAM
SpringBoot + WebSocket Fullstack. Мелим муку - многопоточность Java

00:00 Описание проекта
03:31 Spring Initialzr
04:04 Директория проекта
04:36 Intellij Idea
04:44 GSON
05:33 NodeJS download
06:07 NuxtJS
08:25 Импорт UI модуля
08:53 Запускаем UI
09:22 Базовая верстка
14:24 Скачаем картинки
16:07 ProgressBar
18:56 Backend
19:25 Engine Двигатель
20:48 Цех Machine
21:23 Ресурсы мельницы
22:23 Мельница
22:56 Водяное колесо
28:11 Цех: Жернова
34:04 Мельница - Конструктор
35:35 MillState
37:02 Мельница - MillState
38:15 Наполняем MillState
39:51 MillController
42:00 MillService
47:04 Java WebSocket
50:31 Vuex
54:53 Используем Vuex в UI
56:59 Axios Proxy
59:53 WebSocket UI
01:04:07 Анимируем UI
01:10:52 Благодарность

Исходники: https://github.com/azim-ut/mill_java

источник

👉@BookJava
👍8
Многие разработчики Java часто упускают из виду возможности функционального программирования. Узнайте, как использовать цепочки Optional и Either для написания лаконичного и красивого кода.

https://dzone.com/articles/the-beauty-of-java-optional-and-either

👉@BookJava
👍1
Версионная миграция данных в мире DTO

В этой публикации я хотел бы показать несколько известных мне подходов к версионной миграции данных в контексте DTO. Примеры будут продемонстрированы на языке Java.

https://habr.com/ru/articles/720478/

👉@BookJava
👍5
Media is too big
VIEW IN TELEGRAM
Spring Security, Формы регистрации и аутентицикации.

04:00 Spring Initializr
06:24 Доп. боблиотеки
09:09 AUTH: Properties
12:17 UserDetails
16:46 UserRepository
17:45 AppUserDetailsService
19:30 AppUser + Annotations
38:33 JwtTokenFilter
44:46 WebSecurityConfig
49:54 Список фильтров
51:20 Auth: Bean package
58:39 RegistrationService
58:39 RegistrationService
1:00:07 Auth: signUpUser
1:03:37 PasswordEncoder
1:08:00 AuthController
1:20:11 LoginService
1:21:48 ProviderManager
1:27:25 Logn: проверка пароля
1:30:01 AuthenticationException
1:31:05 Что вернет Authentication?
1:37:19 Auth: Start
1:37:58 Properties debug
1:38:23 authenticationManagerBean
1:40:08 Client проект
1:40:23 Client properties.yaml
1:42:04 Client: JwtSettingsProvider
1:43:49 Client: CurrentUser
1:44:00 Clients: CurrentUserProvider
1:46:36 Client: AccessFilter
1:56:01 Auth: api/v1/auth/current
1:58:11 Auth: api/v1/auth/logout
1:59:50 Client: api/v1/client/access
2:02:09 UI: NuxtJS
2:02:16 UI: Axios Proxy
2:03:40 UI: Vuex
2:07:36 UI: HTML + формы
2:14:45 Csrf ON
2:15:08 Auth: NPE fix
2:16:12 Запуск и проверка
2:18:05 Csrf проблемка
2:20:27 Спасибо!

GitHub: https://github.com/azim-ut/spring_auth

источник

👉@BookJava
👍12
Spring-потрошитель: жизненный цикл Spring Framework

Ни для кого не секрет, что Spring Framework один из самых популярных фреймворков для приложений на языке Java. Он интегрировал в себя самые полезные и актуальные технологии, такие как i18n, JPA, MVC, JMS, Cloud и т.п.

Но насколько хорошо вы знакомы с жизненным циклом фреймворка? Наверняка вы сталкивались с проблемами поднятия контекста и освобождением ресурсов при его остановке, когда проект разрастается. Сегодня я попытаюсь наглядно показать вам это.

https://habr.com/ru/articles/720794/

👉@BookJava
👍4
Media is too big
VIEW IN TELEGRAM
Диспетчерская на базе Spring и Kafka. Полный курс.

Разворачиваем кафка на Docker, слушаем, публикуем и обрабтываем сообщения с помощью Spring.
В качестве обертки - делаем проект для распределения маршрутов самолтеов.

GitHub: https://github.com/azim-ut/youtube_kafka_jet

источник

👉@BookJava
👍5🔥21
Media is too big
VIEW IN TELEGRAM
Java. Класс Object. Разбор вопросов на собеседование.

В данном видео я разбираю вопросы по классу Object на собеседование для начинающих Java разработчиков. Это вопросы из моего личного списка, те что я сам время от времени задаю.
Привожу их тут, чтобы помочь в подготовке, так как практика показывает, что часто этим вопросам уделяется недостаточно внимания:
1.Все классы в Java наследуются от Object, как вы думаете, почему так сделано?
2.Можно ли создать экземпляр класса Object?
3.Зачем кому-то может понадобится создавать экземпляр класса Object?
4.Опишите методы класса Object.
5.Особенности методов wait, notify, notifyAll
6.Что такое хэш-код. Что за значение позвращает метод hashCode класса Object?
7.Как связаны между собой методы equals и hashCode? Что будет, если переопределить equals не переопределяя hashCode? Что будет если у объекта-ключа HashMap изменится хэш-код? Какие могут возникнуть проблемы?
8.Метод finalize, для чего нужен?

источник

👉@BookJava
👍8
Java для сисадминов

Эта статья написана в основном для системных администраторов Java-приложений (DevOps-инженеров, SRE и других производных специализаций). Вероятнее всего, Java-разработчики уже все это прекрасно знают. Хотя Junior Java-разработчикам эта информация может помочь систематизировать знания.

Статья не претендует на полноту или полную непогрешимость. Во-первых, нельзя объять необъятное. Во-вторых, все меняется и проверенные истины могут перестать быть истинами в новых версиях. В сети существует множество статей об устройствах Java, однако в этой статье в блоге ЛАНИТ я стремился сделать выжимку основных моментов, необходимых для администраторов Java-приложений. Для более глубокого погружения в тот или иной вопрос потребуется обратиться к другим источникам.

https://habr.com/ru/companies/lanit/articles/721210/

👉@BookJava
👍4
Media is too big
VIEW IN TELEGRAM
Хранилище файлов. Java + WebDav

Java + WebDav - загружаем файл на webdav через Rest запрос.

00:00 Приветствие
00:34 Spring Init
00:55 Docker Hub
01:54 docker-compose
04:25 webdav.conf
06:00 application.yaml
06:50 Sardine
07:36 WebDavConfig
09:15 WebConfig
11:40 FileService
14:09 Controller
17:22 Docker Fix
17:47 Postman
18:16 что не так?
20:46 Подписывайтесь

источник

👉@BookJava
👍5
Java

Spring Initializr: создаём maven-проект на Java
Spring Initializr: создаём maven-проект на Java в IntelliJ Idea Ultimate Edition
Алгоритмы: пузырьковая сортировка на Java
Коллекции в Java: очередь и стек
Коллекции в Java: List, Set и Map
Парсинг HTML страниц на Java с помощью Jsoup
Алгоритмы: проверка вложенных скобок на Java
Алгоритмы: поиск простых чисел на Java

источник

👉@BookJava
👍7
Java

Кеширование данных в Spring Boot
Полезные советы по работе с BigDecimal в Java
Алгоритмы: бинарный поиск на отсортированном массиве (реализация на Java)
Алгоритмы: поиск простых чисел с помощью "решета Эратосфена"
Алгоритмы: проверка слов и предложений на палиндром
Алгоритм определения анаграмм
Алгоритм инвертирования массива на Java
Разбор и вычисление арифметических выражений на Java

источник

👉@BookJava
10