378 members
6 photos
4 videos
47 files
230 links
Канал о backend и Java. Здесь вы найдёте статьи, книги, вакансии, описание работы с фреймворками и библиотеками Spring, Hibernate, JOOQ, Lombok и др., учебные задачи, анонсы мероприятий.
По всем вопросам прошу связываться по email middle.java@mail.ru
Download Telegram
to view and join the conversation
#tutorial #microprofile #microservice #istio

Use MicroProfile OpenTracing and distributed tracing with Istio to enhance system observability.

In this code pattern, we’ll look at how Open Liberty, MicroProfile, and Open Tracing work alongside Istio to create an end-to-end view of requests flowing through a simulated manufacturing facility, based off of the original instrument craft shop. You’ll have an understanding of distributed tracing and a way to capture, visualize, and tell the story of what happens to an individual request.

In this pattern, we'll go through these steps:

- Installing Istio, enabling tracing and providing access to a dashboard.
- Add MicroProfile and OpenTracing to Open Liberty project.
- Run a simple microservice based application and explore a distributed tracing UI.
- Investigate application failures using information from distributed tracing.


Использование MicroProfile OpenTracing и распределенной трассировки с Istio для повышения наблюдаемости системы.

В этом тьюториале мы рассмотрим, как Open Liberty, MicroProfile и Open Tracing работают вместе с Istio для создания end-to-end представления запросов, проходящих через моделируемую компанию на базе мастерской по изготовлению инструментов. У вас будет понимание распределенной трассировки и способах захвата, визуализации запросов и понимания того, что происходит с отдельным запросом.

Мы выполним следующие шаги:

- Установка Istio, включение трассировки и предоставление доступа к панели инструментов.
- Добавление MicroProfile и OpenTracing в проект Open Liberty.
- Запуск простого приложения на основе микросервиса и изучение пользовательского интерфейса распределенной трассировки.
- Исследование сбоев приложений, на основе информации из распределенной трассировки.


#java #spring

Weekly Java news by Eugene.
Еженедельная подборка новостей по Java от Евгения.


-- A mechanism for executing Gradle builds inside a Maven project

-- A basic example of an API gateway and service discovery using Spring Cloud Gateway

-- And while encrypted DNS is becoming more prevalent, it still presents many challenges


3.5 MB
#books #sql #russian

SQL. Сборник рецептов — Энтони Молинаро

Автор: Энтони Молинаро
Издательство: Символ-Плюс
Год: 2009
ISBN: 978-5-93286-125-7, 5-93286-125-8
PDF: 3 Мб

#companyculture #peopleoperations

Presentation: Building and Scaling a High-Performance Culture

Randy Shoup discusses team
Autonomy - how high-performing companies own their destiny from idea to development to deployment to operations;
Trust - how we need to foster a culture of trust among the individuals on a team, and between the teams themselves;
Pragmatism in the product development process - how we need to define the problem we are solving, and solve it in the simplest way possible.


Презентация: создание и расширение культуры высокопроизводительной работы

Randy Shoup ведёт беседу про:
Автономность - как высокопроизводительные компании управляют своей судьбой, от идеи до разработки и от развертывания до эксплуатации;
Доверие - как нам нужно развивать культуру доверия между людьми в команде и между самими командами;
Прагматизм в процессе разработки продукта - как мы должны определять проблему, которую решаем, и решать ее самым простым способом.


304.9 KB
#job #java

В Сбербанке открыты новые вакансии:

-- Java-разработчик
-- Старший инженер по разработке (системный аналитик)
-- Главный инженер по разработке (Инженер по сопровождению)

-- Главный инженер по разработке (Java)

Подробное описание в приложенном файле.

Если интересно, то прошу присылать резюме на ящик middle.java@mail.ru

#hibernatetips #tutorial

I need to map tables of a legacy database using the SINGLE_TABLE strategy. But these tables don’t contain a discriminator column, and I can’t change the table definition.
Is there any other way to define the mapping to a specific subclass?

Yes, Hibernate provides a proprietary annotation that allows you to provide an SQL snippet that returns a discriminator value. So, you don’t necessarily need a discriminator column.


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

Да, Hibernate предоставляет специальную аннотацию, позволяющую создать фрагмент кода SQL, возвращающий значение дискриминатора. Таким образом, столбец дискриминатора не обязателен нужен .
Читать далее...


#java #spring

Weekly Java news by Eugene.
Еженедельная подборка новостей по Java от Евгения.


-- An overview of Kotlin scope functions

-- A new option in the Spring Initializr - gives us​ a peek at generated projects

-- And a collection of resources to kickstart your journey into AWS


8.5 MB
#books #sql

Spring Boot 2 Recipes,
Marten Deinum,

Solve all your Spring Boot 2 problems using complete and real-world code examples. When you start a new project, you’ll be able to copy the code and configuration files from this book, and then modify them for your needs. This can save you a great deal of work over creating a project from scratch.
Using a problem-solution approach, Spring Boot 2 Recipes quickly introduces you to Pivotal’s Spring Boot 2 micro-framework, then dives into code snippets on how to apply and integrate Spring Boot 2 with the Spring MVC web framework, Spring Web Sockets, and microservices. You’ll also get solutions to common problems with persistence, integrating Spring Boot with batch processing, algorithmic programming via Spring Batch, and much more. Other recipes cover topics such as using and integrating Boot with Spring’s enterprise services, Spring Integration, testing, monitoring and more.

#java #lombok #fluxtion #java10

In this article, I am combining two products, Lombok and Fluxtion, to demonstrate how tools can reduce both the code written and time to delivery while improving the readability of the code. The use of var from Java 10 improves the situation even further. Both products and var use inference at build time to accelerate development.


В этой статье я объединю два продукта - Lombok и Fluxtion, чтобы продемонстрировать, как эти инструменты могут сократить и объем кода и время его доставки, одновременно улучшая читаемость кода. Использование var из Java 10 еще больше улучшает ситуацию. Lombok, Fluxtion и var используют вывод типов во время сборки для ускорения разработки.



Какие вопросы задавать программистам на собеседовании

Часто, при собеседовании кандидатов на позиции программистов сосредотачиваются на технических вопросах, наподобие, «Зачем нужен виртуальный деструктор?», предлагают разобрать фрагмент кода с хитрым синтаксисом, который редко встречается в реальной жизни или просто дают тестовое задание. В результате студент-олимпиадник может отлично пройти интервью, а человек с 10 годами работы нет. Между тем, далеко не факт, что студент, начитавшийся книжек, будет эффективно работать, а не тратить время на рассказы начальству «как правильно программировать» и разработку очередного красивого четырехколесного велосипеда.
Конечно, технические вопросы на собеседовании задавать нужно, но не менее полезно спросить о подходах к разработке, которые использовались на прошлых местах работы и поинтересоваться мнением кандидата о том, как правильно делать, а как нет. Человек, который работал в команде с хорошо поставленными процессами, вероятно, избавлен от привычек выкладывать несобирающийся код, ломать тесты и заниматься излишним рефакторингом.


#java #spring

Weekly Java news by Eugene.
Еженедельная подборка новостей по Java от Евгения.


-- A guide to enabling and working with Java Preview Features

-- An interesting report on current trends in Java technology adoption

-- And Spring Tools 4.3.1 is released


#webinar #jvm #heapdump

30 июля 2019 г. c 19:00 до 21:00 МСК пройдёт
вебинар посвящённый работе с дампами памяти JVM.
включающий теоретическую и практическую части.

Программа вебинара:

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

Анализ дампов прикладных приложений в Eclipse Memory Analyzer
Eclipse Memory Analyzer один из бесплатных инструментов анализа хипдампов. Будет продемонстрирована работа с этим инструментом на примерах дампов реальных Java приложений.

VisualVM, работа с дампами памяти
Будут продемонстрированы основные возможности VisualVM в формате мастер-класса. Участникам будет предоставлена возможность повторить все шаги на своих компьютерах.

Анализ дампов памяти из командной строки
Графические инструменты, такие как VisualVM и Eclipse MAT, конечно хороши, но иногда удобнее провести анализ дампа JVM из консоли. Будут продемонстрированы возможности анализа дампов используя OQL и JavaScript в консольном режиме.


Стажер в Java школу.docx
16.8 KB
#job #java #junior

ПАО Сбербанк приглашает IT-специалистов и студентов последних курсов технических ВУЗов пройти бесплатное обучение в Москве по направлению Java с возможностью последующего трудоустройства в штат компании.
Занятия будут проводиться в московском офисе ПАО Сбербанк 3 месяца по 2 занятия в неделю в вечернее время (4 академических часа).

Кого рассматриваем на обучение:
-- IT-специалистов, желающих освоить Java.
-- студентов старших курсов (4 курс бакалавриата, 5, 6 курс магистратуры, выпускники ВУЗов, специалисты с возможность работать full – time).

Подробное описание в приложенном файле.

Если интересно, то прошу присылать резюме на ящик middle.java@mail.ru

54.4 MB
#book #designpatterns

Название: Шаблоны корпоративных приложений
Автор: Мартин Фаулер
Издательство: Вильямс
Год: 2016
Формат: pdf
Размер: 54,4 Мб
Качество: Хорошее
Язык: Русский

#softwaredevelopment #junior #tips

5 tips for your first 5 days as a new dev

Starting your first developer position can be daunting. Even after a few years, switching companies can be stressful. Here are a few tips to make transitioning into a new team easier, especially focused on new developers.


5 советов на первые 5 дней работы начинающего разработчика

Первые дни карьеры начинающего разработчика могут быть пугающими. Даже спустя годы смена места работы может вызвать стресс. Вот несколько советов, которые облегчат переход в новую команду, особенно начинающим разработчикам.


#docker #containers

10 docker-compose and docker commands that are useful for active development


10 вариантов использования команд "docker-compose" и "docker" полезных при активных деплоях


#java #spring #microprofile #hibernate

Weekly Java news by Eugene.
Еженедельная подборка новостей по Java от Евгения.


-- Shell support in Java is worth looking into now
-- Debugging NPEs is about to get easier
-- And a very interesting look into the risk of transitive dependencies


Which IDE do you primarily use? Какой IDE вы пользуетесь больше всего?
anonymous poll

IntelliJ IDEA – 58
👍👍👍👍👍👍👍 83%

Eclipse – 4
▫️ 6%

NetBeans – 3
▫️ 4%

VS Code – 3
▫️ 4%

Android Studio – 1
▫️ 1%

Another – 1
▫️ 1%

Spring Tool Suite
▫️ 0%

Visual Studio
▫️ 0%

▫️ 0%

👥 70 people voted so far.