Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Добавление уровней безопасности в приложение в OpenShift
Сегодня защита приложений является «обязательной», но сложно представить ее без изменения кода, если не думать об этом в самом начале. К счастью, новые собственные облачные шаблоны, создаваемые контейнерами и платформами, такими как Kubernetes, предлагают простые способы решения проблем безопасности, не затрагивая код.

В серии блогов Лоран Бруду показывает каждый этап, чтобы обезопасить существующее fruits-catalog приложение:
Часть 1 - Развертывание и вход TLS
Часть 2. Аутентификация и авторизация с помощью Keycloak
Часть 3 - Секретное управление с Vault
Часть 4 - Динамические секреты с Vault
Часть 5 - Взаимный TLS с Istio
Структуры данных и алгоритмы в Java. Классика Computers Science. 2-е изд.
Автор: Лафоре Р.

#programming #java #book

Целевая аудитория: для начинающих разработчиков.

Структуры данных и алгоритмы на Java, второе издание, разработаны так, чтобы их было легко читать и понимать, хотя сама тема сложна. На четких и простых программных примерах автор объясняет эту сложную тему, предлагая читателям написать собственные программы и на практике освоить полученные знания.

В книге рассматриваются следующие темы:
✔️программы для различных структур данных и алгоритмов на Java;
✔️как анализировать алгоритмы;
✔️как писать и отслеживать рекурсивные алгоритмы и другое.

Преимущества:
отлично подходит для тех, кто даже не знает Java, поскольку в первой главе объясняется, что вам нужно знать, чтобы следовать коду;
язык ясен и точен, и представление систематизировано и хорошо организовано.

Недостатки:
примеры часто плохи (загадочные имена переменных, дублирующий код и д.р.);
часто запутанная.
Quarkus представляют новую версию и просят разработчиков протестировать ее

Недавно сообщество Quarkus выпустило первый выпуск Quarkus 1.0 Candidate Release, и вскоре планирует выпустить финальную версия 1.0. Последние несколько недель до объявления об этом сообщество очень усердно работало над повышением качества Quarkus: исправлением ошибок, улучшением документации, новыми расширениями и, прежде всего, повышением стандартов для разработчиков. "Теперь пришло время внести ваш вклад: протестировать Quarkus 1.0.0.CR1 и присоединиться к нам :)", — обращается к разработчикам команда Quarkus.

Quarkus — это стек с открытым исходным кодом для написания Java-приложений, предлагающий беспрецедентное время запуска, объем памяти и опыт разработчиков. Он предлагает знакомые модели программирования и API (Hibernate, JAX-RS, Eclipse Vert.x, Apache Camel, Eclipse MicroProfile, совместимость с Spring API и многое другое).
hazelcast —> Отличный пост (с образцом репозитория) о том, как ввести hazelcast как слой между базой данных и клиентами, а также улучшить производительность и гибкость в результате. Он берет пример с Spring JPA и дополняет его Spring Hazelcast для дополнительной скорости и устойчивости, не отбрасывая то, что уже есть.
"Для разработчика это маленькие шаги, а для архитектора — гигантские скачки".
Senior/Middle Java Backend Developer в TextBack

120 000 - 200 000 ₽ на руки
Санкт-Петербург

https://prglb.ru/4z1dn
6-8 декабря в Москве состоится хакатон Rosbank Tech.Madness. К участию приглашаются разработчики и аналитики. Вас ждет:

- возможность заявить о себе в самом безумном соревновании уходящего года;

- незаезженные задачи;

- призовой фонд в 600 000 руб.

Регистрируйся на сайте https://prglb.ru/38nev
Cписок лучших инструментов с их функциями и ссылками для скачивания

1) JUnit:
JUnit — это инструмент модульного тестирования с открытым исходным кодом для языка программирования Java. Это важный инструмент для разработки и развертывания на основе тестирования.
Ссылка для скачивания: http://junit.org/junit4/

2) NetBeans — это бесплатная IDE с открытым исходным кодом. Это позволяет разрабатывать приложения для рабочего стола, мобильные и веб-приложения.
Ссылка для скачивания: https://netbeans.org/downloads/index.html

3) Apache Maven — это программный инструмент управления проектами. Он основан на концепции объектной модели проекта (POM).
Ссылка для скачивания: http://maven.apache.org/download.cgi

4) JRat — это инструментарий анализа среды выполнения Java. Это простой в использовании профилировщик производительности с открытым исходным кодом для платформы Java. Он может контролировать выполнение приложения и измерения производительности.
Ссылка для скачивания: https://sourceforge.net/projects/jrat/files/JRat/

5) Mockito — это популярный фреймворк для Java с открытым исходным кодом. Он помогает разработчикам писать чистый, хорошо разработанный и слабо связанный код.
Ссылка для скачивания: http://site.mockito.org/
Идет набор на программу подготовки сильных Javа-программистов за 5 месяцев с оплатой после трудоустройства.Зарплата от 120 000 рублей на старте. За свою работу мы просим процент от зарплаты разработчика. У нас нет скрытых условий или кредитов.

Пройти тестовое задание нужно до 29 ноября:🙋‍♂️👉 https://clck.ru/KBUKt

👇Что ждет участника:
1. Подготовка с личным ментором online по индивидуальной программе
2. Жесткий контроль знаний на каждом этапе
2. Обучение востребованному на рынке стеку технологий: Java Core, Maven, Git, Junit, Tomcat, Servlet, Spring MVC, Core, Security, Hibernate
4. Отработка знаний в настоящем бизнес проекте, который даст опыт и строчку для резюме
5. Поддержка и общение со студентами-разработчиками в групповом чате slack (уже 1200 участников)
6. Возможность быстрого карьерного развития за счет программы поддержки на 2 года: митапы, мастер-классы, закрытые лекции со спикерами и offline интенсивы

Какие условия для участия?
— Обучению минимум 25 часов в неделю
— Готовность к переезду в Москву
Cheat_Sheet-_10_Java_Security_Best_Practices.pdf
139.4 KB
Шпаргалка: 10 рекомендаций по безопасности Java
Десять лучших рекомендаций по безопасности Java для разработчиков ПО с открытым исходным кодом. Это шпаргалка является совместной работой Брайана Вермеера и Джима Манико. Рекомендуем также прочесть статью-описание к ней.
Реализация A* поиска пути в Java
Алгоритмы поиска пути — это методы навигации по картам, позволяющие находить маршрут между двумя разными точками. Разные алгоритмы имеют разные плюсы и минусы, часто с точки зрения эффективности алгоритма и эффективности маршрута, который он генерирует.

В этой неплохой статье вы найдете, что такое алгоритм A*, как он работает и как реализовать его в собственных проектах.
int[] mass = {1, 2}; 
List<String> list = new ArrayList(10);
list.add("03");
list.add("04");
System.out.println(mass.length + list.size() + ".");
Что выведет программа?
Anonymous Poll
2%
1.
7%
2.
5%
3.
87%
4.
Код успешно скомпилируется и выведет на экран 4., так как длина массива mass составляет 2 и метод size() для листа тоже выдаст 2, ведь мы добавили 2 элемента.
Битва двух микросервисных фреймворков: Micronaut и Quarkus

Какой же из фреймворков наиболее удобен и шустер? Рассмотрим в данном выступлении от недавно прошедшей конференции Devoxx:
https://www.youtube.com/watch?v=hnEXOqcNXPs
Работа с большими данными с Neo4j и Java
Графовые системы управления базами данных (например, Neo4j, реализованный в Java) идеальны для моделирования сложных зависимостей и связей, так как они проходятся по большим данным практически на скорости света.
Узнай, как можно эффективно выразить отношения между пользователями в социальных сетях, используя Neo4j и Cypher Query Language
Чвсть 1 https://www.javaworld.com/article/3256278/big-data-analytics-with-neo4j-and-java-part-1.html
Часть 2 https://www.javaworld.com/article/3269575/big-data-analytics-with-neo4j-and-java-part-2.html
Что является результатом выражения 1.0/0.0
Anonymous Poll
11%
Compile-time error
33%
Infinity
50%
Exception
2%
1.0
4%
0.0
Правильнй ответ: Infinity
Несмотря на то, что многие Java-разработчики знают о примитивном типе данных double и о классе Double, они не уделяют нужного внимания Double.INFINITY, NaN, -0.0 и операциям над числами с плавающей точкой. Данная операция вернет Double.INFINITY.
Кстати, сравнение x==Double.NaN всегда вернет false, даже если x является NaN. Чтобы проверить, является ли х NaN, используй метод Double.isNaN(x).