Библиотека джависта | 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
加入频道
#вопросы_с_собеседований
1. Что произойдет при вызове Iterator.next() без предварительного вызова Iterator.hasNext()?
2. Сколько элементов будет пропущено, если Iterator.next() будет вызван после 10-ти вызовов Iterator.hasNext()?
1. Если итератор указывает на последний элемент коллекции, то возникнет исключение NoSuchElementException, иначе будет возвращен следующий элемент.
2. Нисколько - hasNext() осуществляет только проверку наличия следующего элемента.
#вопросы_с_собеседований
Какими свойствами обладает порождаемое equals() отношение эквивалентности?
☕️ Рефлексивность: для любой ссылки на значение x, x.equals(x) вернет true;
☕️ Симметричность: для любых ссылок на значения x и y, x.equals(y) должно вернуть true, тогда и только тогда, когда y.equals(x) возвращает true.
☕️ Транзитивность: для любых ссылок на значения x, y и z, если x.equals(y) и y.equals(z) возвращают true, тогда и x.equals(z) вернёт true;
☕️ Непротиворечивость: для любых ссылок на значения х и у, если несколько раз вызвать х.equals(y), постоянно будет возвращаться значение true либо постоянно будет возвращаться значение false при условии, что никакая информация, используемая при сравнении объектов, не поменялась.

Для любой ненулевой ссылки на значение х выражение х.equals(null) должно возвращать false.
JDBC URL состоит из:

☕️ <protocol>: (протокола) - всегда jdbc:.
☕️ <subprotocol>: (подпротокола) - это имя драйвера или имя механизма соединения с базой данных. Подпротокол может поддерживаться одним или несколькими драйверами. Лежащий на поверхности пример подпротокола - это "odbc", отведенный для URL, обозначающих имя источника данных ODBC. В случае необходимости использовать сервис имен (т.е. имя базы данных в JDBC URL не будет действительным именем базы данных), то подпротоколом может выступать сервис имен.
☕️ <subname> (подимени) - это идентификатор базы данных. Значение подимени может менятся в зависимости от подпротокола, и может также иметь под-подимя с синтаксисом, определяемым разработчиком драйвера. Назначение подимени - это предоставление всей информации, необходимой для поиска базы данных. Например, если база данных находится в Интернет, то в состав подимени JDBC URL должен быть включен сетевой адрес, подчиняющийся следующим соглашениям: //<hostname>:<port>/<subsubname.

Пример JDBC URL для подключения к MySQL базе данных «Test» расположенной по адресу localhost и ожидающей соединений по порту 3306: jdbc:mysql://localhost:3306/Test
#вопросы_с_собеседований
Опишите основные этапы работы с базой данных при использовании JDBC.
#вакансия #Java #Spring #middle #senior #Москва #офис #удалённо

Позиция: Java разработчик
Компания: Компания Страховой Дом ВСК
Локация: Москва
Формат работы: офис или удалённо
Занятость: полная
З\п: 150 000 - 210 000 ₽/мес
Контакт: @maximvolkov89

Компания САО "ВСК" - топ 10 компаний лидеров на рынке страхового бизнеса. В штате порядка 7 тыс. сотрудников, в IT-подразделении более 500 сотрудников.

Ищем в команду Ведущего разработчика Java на дистанционное направление (Интернет магазин, Мобильное приложение, Мидл система) - автоматизации новых продуктов страхования, интеграций с внешними и внутренними сервисами, а так же внутренними системами Компании (back).

Перспективы проекта – полностью новый технологический стек, современные подходы в работе, глобальное изменение ИТ-ландшафта компании, в которой процессы разработки значительно упростятся.

Что предстоит делать:

- Разработка высокопроизводительного бэкенда;
- Интеграция со сторонними сервисами компании;
- Распил монолита на отдельные модули.

Стэк: Java 11, Apache Karaf, OSGI, Spring Boot, PostgreSQL, Camunda BPM, Docker, Elasticsearch.
Что нужно уметь

Что нужно уметь:

- Опыт работы с Java;
- Опыт работы с Apache Camel\Karaf, OSGI;
- Знания Core Java и Spring Framework;
- Опыт работы с одним из тестовых Framework: Junit, TestNG, Mockito;
- Опыт работы с базами данных PostgreSQL;

Условия и преимущества

- Оформление по ТК РФ.
- Официальная зп.
- Система премирования: до 2-х окладов в год.
- Корпоративный транспорт от м. Кунцевская/ м. Полежаевская.
- Возможность дистанционной работы фултайм.
- ДМС.
☕️ Регистрация драйверов;
☕️ Установление соединения с базой данных;
☕️ Создание запроса(ов) к базе данных;
☕️ Выполнение запроса(ов) к базе данных;
☕️ Обработка результата(ов);
☕️ Закрытие соединения с базой данных.
#вопросы_с_собеседований
При помощи чего формируются запросы к базе данных?
Для выполнения запросов к базе данных в Java используются три интерфейса:

☕️ java.sql.Statement - для операторов SQL без параметров;
☕️ java.sql.PreparedStatement - для операторов SQL с параметрами и часто выполняемых операторов;
☕️ java.sql.CallableStatement - для исполнения хранимых в базе процедур.

Объекты-носители интерфейсов создаются при помощи методов объекта java.sql.Connection:

☕️ java.sql.createStatement() возвращает объект Statement;
☕️ java.sql.prepareStatement() возвращает объект PreparedStatement;
☕️ java.sql.prepareCall() возвращает объект CallableStatement;
🎄2021 год – самое время стать Java-разработчиком

Повысь свой левел от нуля до Junior-а с интерактивным курсом JavaRush. На JavaRush ты найдешь 1200+ практических задач, автопроверку решений и даже онлайн-стажировку.

А еще курс адаптируется под тебя.

Если ты совсем новичок – будет много деталей и объяснений, если ты чуть более продвинутый джавист – то получишь только hardcore-задачи. Если любишь учиться, развлекаясь – лови острый сюжет и игровой формат, а если хочешь исключительно серьезного контента – то для тебя есть сухая выжимка сути.

Писать код ты будешь уже с первого урока. В любом из вариантов :)

Регистрируйся и воплощай мечту стать Java-программистом: ссылка.

Сейчас действует скидка 50% на все годовые пакеты. Попробовать можно бесплатно.
#вопросы_с_собеседований
Как поделиться данными между двумя потоками?
Данными между потоками возможно делиться, используя общий объект или параллельные структуры данных, например BlockingQueue.
Computer Science: An Interdisciplinary Approach (2016)
Авторы: Роберт Седжвик, Кевин Уэйн
Количество страниц: 1168

Известный преподаватель и учёный Роберт Седжвик написал для вас универсальное введение в computer science с помощью языка программирования Java. В книге наряду с основами представлен полезный курс по ООП, алгоритмам и структурам данных, теории вычислений и архитектуре компьютеров. Все объяснения сопровождаются интересными примерами, призванными увеличить эффект самостоятельного обучения. Вы найдёте в ней примеры не только из математики и физики, но также из биологии и экономики.

Скачать книгу
Хочешь работать в IT, но не хватает практики?
Присоединяйся к бесплатному Java-интенсиву, где тебя ждут реальные задачи, которые помогут закрепить знания и понять, в каком направлении двигаться дальше.

Регистрируйся по ссылке: 👉 https://clc.to/DUr6Gw.

Тебя ждут 3 прямых эфира по 1,5–2 часа для полного погружения в тему, общение с другими участниками и ведущим интенсива в закрытом чате в Telegram!

Что тебя ждёт?
Основы программирования на Java.
Работа с файлами и библиотеками.
Разработка приложения, которое непрерывно записывает звук с микрофона компьютера и отправляет файлы в Dropbox.
Анализ работ и разбор типичных ошибок.
Работа с потоками и параллельное выполнение в них задачи.

⚡️⚡️⚡️ Если твой проект будет одним из лучших — получишь сертификат на 30 000 рублей для поступления на любой онлайн-курс университета Skillbox!
👶 10 ошибок начинающего разработчика

Обучение на собственных ошибках – правильный путь развития развития разработчика. Ошибки совершают абсолютно все новички, рассмотрим самые распространенные из них.

https://proglib.io/sh/vw1cSFZ73j
#вопросы_с_собеседований
Перечислите основные классы и интерфейсы JDBC.
java.sql.DriverManager - позволяет загрузить и зарегистрировать необходимый JDBC-драйвер, а затем получить соединение с базой данных.

javax.sql.DataSource - решает те же задачи, что и DriverManager, но более удобным и универсальным образом. Существуют также javax.sql.ConnectionPoolDataSource и javax.sq1.XADataSource задача которых - обеспечение поддержки пула соединений.

java.sql.Connection - обеспечивает формирование запросов к источнику данных и управление транзакциями. Также предусмотрены интерфейсы javax.sql.PooledConnection и javax.sql.XAConnection.

java.sql.Statement , java.sql.PreparedStatement и java.sql.CallableStatement - эти интерфейсы позволяют отправить запрос к источнику данных.

java.sql.ResultSet - объявляет методы, которые позволяют перемещаться по набору данных и считывать значения отдельных полей в текущей записи.

java.sql.ResultSetMetaData - позволяет получить информацию о структуре набора данных.

java.sql.DatabaseMetaData - позволяет получить информацию о структуре источника данных.
☕️ Как пройти собеседование на позицию Java-разработчика?

Чтобы получить работу, знать программирование на Java недостаточно – нужно найти вакансию и пройти квест по найму. Рассказываем о плане подготовки к интервью, часто встречающихся вопросах по Java Core и Java EE и правильном поведении на собеседовании.

https://proglib.io/sh/RSTXPDf4pj