Библиотека джависта | 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
加入频道
<div> - блочный, а <span> - строчный элементы. Поэтому <div> формирует блок из того, что в нем располагается с новой строки, а <span> не переносит элементы, размещая их в строку. Так же стоит отметь, что согласно рекомендациям w3c линейный тег не может включать в себя блочные теги, поэтому <div> обычно используется для разметки блоков, а <span> - отрывков текста.
#вопросы_с_собеседований
В чем разница между операторами GROUP BY и DISTINCT?
DISTINCT указывает, что для вычислений используются только уникальные значения столбца. NULL считается как отдельное значение. GROUP BY создает отдельную группу для всех возможных значений (включая значение NULL).

Если нужно удалить только дубликаты лучше использовать DISTINCT, GROUP BY лучше использовать для определения групп записей, к которым могут применяться агрегатные функции.
#вопросы_с_собеседований
Какой существует эффективный способ удостоверится, что все сервлеты доступны только для пользователя с верной сессией?
Сервлет фильтры используются для перехвата всех запросов между контейнером сервлетов и сервлетом. Поэтому логично использовать соответствующий фильтр для проверки необходимой информации (например валидности сессии) в запросе.
Когда стоит изменять значение поля serialVersionUID?

serialVersionUID нужно изменять при внесении в класс несовместимых изменений, например при удалении какого-либо его атрибута.
Есть опыт и знания в IT, которыми Вы хотите поделиться?

Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!

Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.

Интересующие направления для написания статей:
• DevOps
• Блокчейн
• Информационная безопасность
• Дизайн интерфейсов (UX/UI)
• Ruby on Rails
• Rust
• Python
• C/C++/C#
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• Data Science, BigData и Machine Learning
• IT Management

Оставьте заявку на https://job.proglib.io/ и мы свяжемся с вами!
Укажите метод, не определенный в классе java.lang.Thread
Anonymous Quiz
18%
join()
9%
sleep()
36%
wait()
37%
getPriority()
#вопросы_с_собеседований
Могут ли нестатические методы перегрузить статические?
Ответ к вопросу

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

Уже 28 и 29 августа пройдет первый раунд онлайн-чемпионата для Java-разработчиков X5 DevMasters.

Первое место забирает домой 500 тысяч. Плюс приглашение на работу в X5 Group.

Что нужно знать, чтобы повысить шансы на победу:
● Java не ниже Middle
● продуктовый подход
● практики CI/CD и DevOps
● облачную инфраструктуру
● модульное и интеграционное тестирование.


Зарегистрируйся сейчас на платформе All Cups, чтобы не пропустить оповещение о старте: https://vk.cc/c5gHn9
Библиотека джависта | Java, Spring, Maven, Hibernate
#вопросы_с_собеседований Чем отличается Statement от PreparedStatement?
☕️ Statement: используется для простых случаев запроса без параметров.
☕️ PreparedStatement: предварительно компилирует запрос, который может содержать входные параметры и выполняться несколько раз с разным набором этих параметров.

Перед выполнением СУБД разбирает каждый запрос, оптимизирует его и создает «план» (query plan) его выполнения. Если один и тот же запрос выполняется несколько раз, то СУБД в состоянии кэшировать план его выполнения и не производить этапов разборки и оптимизации повторно. Благодаря этому запрос выполняется быстрее.

Суммируя: PreparedStatement выгодно отличается от Statement тем, что при повторном использовании с одним или несколькими наборами параметров позволяет получить преимущества заранее прекомпилированного и кэшированного запроса, помогая при этом избежать SQL Injection.
Измени мир кликом мыши! 🖱️

Стартовал самый масштабный конкурс для IT-специалистов — «Цифровой прорыв» 2021 🚀

➡️ Собирай команду и участвуй в одном из 8 тематических хакатонов.
➡️ Решай кейсы с применением технологий: Big Data, IoT, AR/VR, AI, квантовые технологии, промышленный интернет и пр.
➡️ Открывай новые карьерные возможности.
➡️ Получай опыт и знания от более 400 экспертов IT-индустрии.
➡️ Изучай уникальные образовательные программы от «Цифрового Прорыва».
➡️ Внедряй свой продукт на рынок с помощью Акселератора «Цифрового Прорыва».

Выиграй призовой фонд — 55 млн. руб. 🏆

Регистрируйся: https://proglib.io/w/9eee69ed
#вопросы_с_собеседований
В чем отличие между кластерными и некластерными индексами?
Где лучшие конференции? У нас на <Природа кода> 🏕

Го вместе с Х5 Tech на бесплатный кемпинг-уикенд <Природа кода> в Переславль-Залесский.

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

▪️О чем поговорим?

В категории бэк Юрий Букаткин расскажет "Как быстро выбрать для 50 млн пользователей лучший контент", а Александр Логинов ответит на вопрос "Как рождается код?"

Во фронте обсудим вместе с Глебом Михеевым "Как расти и развиваться в айти", Полина Гуртовая поделится мыслями на тему "Фронтенд как часть Коллективного Разума".

▪️Для кого: IT-фанаты, энтузиасты и визионеры по стекам Java/JavaScript/Python, уровня middle&senior
▪️Где: AZIMUT Отель Переславль 4*
▪️Когда: уикенд 11-12 сентября

Комплимент от Х5 Tech: трансфер, питание, проживание и активити - все бесплатно для участников слета.

Больше тем и спикеров на лендинге, а рядом кнопка регистрации 😉
Библиотека джависта | Java, Spring, Maven, Hibernate
#вопросы_с_собеседований В чем отличие между кластерными и некластерными индексами?
Некластерные индексы - данные физически расположены в произвольном порядке, но логически упорядочены согласно индексу. Такой тип индексов подходит для часто изменяемого набора данных.

При кластерном индексировании данные физически упорядочены, что серьезно повышает скорость выборок данных (но только в случае последовательного доступа к данным). Для одного набора данных может быть создан только один кластерный индекс.
Блокирующий метод – метод, который блокируется до тех пор, пока задание не выполнится, например метод accept() у ServerSocket блокируется в ожидании подключения клиента. Здесь блокирование означает, что контроль не вернётся к вызывающему методу до тех пор, пока не выполнится задание. Так же существуют асинхронные или неблокирующиеся методы, которые могут завершиться до выполнения задачи.
#вопросы_с_собеседований
В чем разница между PrintWriter и ServletOutputStream?
PrintWriter — класс для работы с символьным потоком, экземпляр которого можно получить через метод ServletResponse getWriter();

ServletOutputStream — класс для работы байтовым потоком. Для получения его экземпляра используется метод ServletResponse getOutputStream().