Тег: java

Собрать проект Kotlin + Java c помощью Maven

# Программирование

Иногда бывает, что проект пишется на kotlin, я относительно недавно открыл для себя ktor-project, очень удобная штука, но бывают ситуации, когда нужно добавить код, написанный на java, какие же ситуации тут могут быть?

Читать дальше →

Автоматизация бизнес-процессов Camunda

# Программирование

Появилась идея сформировать свои знания и начать передавать их аудитории. Это начинание поддержал #Skyeng за что им огромное спасибо. Вот я собрал вещи и полетел в солнечный Дагестан. Что такое BPMN, для чего это может вам потребоваться, как помочь, а как нет

Читать дальше →

Spring Boot. Кастомный банер в логах

# Программирование

                                                 
     /\                                         
    /  \__      _____  ___  ___  _ __ ___   ___  
   / /\ \ \ /\ / / _ \/ __|/ _ \| '_ ` _ \ / _ \ 
  / ____ \ V  V /  __/\__ \ (_) | | | | | |  __/ 
 /_/    \_\_/\_/ \___||___/\___/|_| |_| |_|\___| 
                                                 
=================================================
===          Create by Sergey Boychenko       ===
=================================================

Хотите немого красоты в логах? Поделюсь как это сделать, заменить стандартный springboot баннер на свой собственный

Читать дальше →

UI ReactJS + Java Back. Разворачиваем на стенд

# Программирование

Тут я поделюсь опытом, как развернуть приложение на react + java на linux стенде.

В качестве http сервера будем использовать nginx

Считаем, что фронт и бек уже написаны. Фронт поднимается на localhost:3000, бек, пусть на localhost:8080/rest, и также настроена поддержка CORS

Разворачивать будем на https://host.name

Перенастроим адрес бека в react на https://host.name/rest, в беке пропишем адрес для cors https://host.name

Закинем фронт в /var/www/ui, бек в /opt/backend. Пути тут не принципиальны, но принято именно туда закидывать, будем придерживаться стандартов, дабы не усложнять будущую поддержку.

Доконфигурируем UI. В package.json добавим параметр, это нужно, что бы если фронт будем разворачивать не в корне, а по какому-нибудь context path, react подгружал статики по относительному пути, а не от корня

"homepage": ".",

Сконфигурируем nginx. Тут важные моменты — alias, к слову если мапите в корень, то можно пропустить пункт с доконфигом UI, и без этого будет работать.

location /ui {         
  alias /var/www/ui/;         
  # Alias используем на случай мапинга в path, если мапим /, то root         
  #root /var/www/ui/;         
  #try_files $uri /index.html;         
  autoindex off;     
}

Теперь для бека. Тут настроим проксирование. Сервер же у нас настроен правильно, порты закрыты, кроме 443 и 80. Так что без этого не заработает

location /rest {         
  proxy_pass http://localhost:8080;         
  proxy_read_timeout 360s;         
  proxy_redirect http https;         
  proxy_buffering off;         
  proxy_http_version 1.1;     
}

На этом готово! Можно радоваться рабочему приложению!

Vaadin TODO за 30 минут

# Программирование

Fullstack веб-приложение за 30 минут? Звучит интересно. Учитывая что при этом без использования css и js можно получить годный дизайн и нормальную адаптивную верстку!

Читать дальше →

Spring Batch + JmsTemplate

# Программирование

Задача: Читать сообщения пачками из jms очереди, делать обработку, применять какую-либо логику уже на пачку.

Хм… Задача довольно необычна, но иногда такая необходимость крайне нужна. В моем случае — это единственная возможность для организации промежуточного буфера, который разгрузит сервис, умеющий обрабатывать пакетные команды.

Читать дальше →

Java Optional — Отец холиваров

# Программирование

java8-optional
  1. Что такое Optional, почему он полезен? ->
  2. Как использовать Optional ->
  3. Использование, уместное и не очень ->
  4. Холивары ->
  5. Итоги ->
Читать дальше →