JPA relations

JPA relations

Один ко многим БД: Branch. Справочная таблица реквизитов банка для денежных счетов. Поле Тип Описание Ограничения id varchar(32) Город операционного офиса банка PK bank varchar(256) Наименование офиса (для реквизитов перевода) not null bik varchar(9) БИК Branch_Code. Справочная таблица соответствия города и кода отделения банка. Поле Тип Описание Ограничения code integer Код отделения PK branch_id varchar(256) Город отделения not nullFK на branch.id при удалении записи в branch производится каскадное удаление Liquibase: Java: Один ко многим без @Id Один к одному Один…

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

Intellij Idea, Java, Spring — Troubleshooting

Intellij Idea, Java, Spring — Troubleshooting

Type specified for TypedQuery [ru.knastnt.app.MyClass] is incompatible with query return type [class ru.knastnt.app.MyClass] Такое случается при дебаге и решается с путём исключения из pom.xml зависимости spring-boot-devtools. Can’t load camunda cockpit with error in console: It was not able to load the following file ‘app/plugin.js’ Проблема описана здесь https://jira.camunda.com/browse/CAM-10738 и решением является: — либо запуск с использованием Shorten command line: — либо удаление из .idea/workspace.xml строки <property name=»dynamic.classpath» value=»true» /> @JsonAnySetter not works. @JsonAnySetter не работает на вложенных объектах. С этой…

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

Установить Active MQ и IBM MQ локально

Установить Active MQ и IBM MQ локально

Речь идёт об установке данных систем локально с помощью Docker. Active MQ https://hub.docker.com/r/rmohr/activemq Запуск: 12docker pull rmohr/activemq docker run -p 61616:61616 -p 8161:8161 rmohr/activemq Подключение к web: http://localhost:8161/admin Логин/пароль: admin admin IBM MQ https://hub.docker.com/r/ibmcom/mq How to: https://github.com/ibm-messaging/mq-container/blob/master/docs/usage.md Запуск: 12docker pull ibmcom/mq docker run —env LICENSE=accept —env MQ_QMGR_NAME=QM1 —publish 1414:1414 —publish 9443:9443 —detach ibmcom/mq Подключение к web: https://localhost:9443/ Логин/пароль: admin passw0rd Имя администратора очередей: QM1 Канал: DEV.ADMIN.SVRCONN

Liquibase

Liquibase

Не буду разжевывать то что и так везде разжевано, просто запишу тут некоторые вещи. Если нужно управлять ченджсетами вне контекста java-приложения, то это можно сделать непосредственно через утилиту liquibase.exe. Для начала нужно установить liquibase на компьютер.Затем добавить в директорию lib драйвер postgre-jdbc (желательно версии не ниже 9.6, а то будут потом проблемы).Затем запускать из директории проекта. Применение файла _.xml (если это обновление уже применено, то второй раз уже не применяется): При этом история применения обновлений сохраняется в двух служебных таблицах:…

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

Spring boot + i18n + Thymeleaf

Spring boot + i18n + Thymeleaf

Пошагавая инструкция как настроить интернационализацию в приложении на Spring. Пишу эту статью потому что там много нюансов, чтобы их самому не забыть). Исходные данные: Пустой проект на Java 11, созданный при помощи https://start.spring.io/ с зависимостями Spring Web, Thymeleaf. Для запуска интернационализации на проекте Spring Boot достаточно создать бандлы (файлы .properties) и объявить Bean — MessageSource. Создадим пару файлов: 1src\main\resources\locale\messages\app.properties 1src\main\resources\locale\messages\app_ru.properties со следующим содержимым соответственно: 12registration.label = Sign Up<br /> login.label=Sign In 12registration.label = Регистрация<br /> login.label=Вход Чтобы быстренько увидить работающую…

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

Java + Apache Kafka = Первый проект

Java + Apache Kafka = Первый проект

Статья разбита на 2 части: Установка Kafka на сервер и создание SpringBoot приложения. Если вы вообще не в курсе за брокеров сообщений, то советую посмотреть два видосика про Apache Kafka и Rabbit MQ. Они дадут понимание как там что работает и чем отличается: I. Установка Apache Kafka В качестве базовой системы у меня CentOS 7 x86_64 Minimal 1804. Для кафки рекомендуется иметь 4 Gb оперативки. Перед началом работы ставлю нужные мне программы: sudo yum install mc nano net-tools wget -y…

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

Java шпаргалка

Java шпаргалка

Файл application.properties Большой список всевозможных свойств и описаний к ним Получение значения параметра свойства Надо пометить переменную наподобие такого RestTemplate send PATCH request При попытке отправить PATCH запрос, возникает исключение ProtocolException: Invalid HTTP method: PATCH или ResourceAccessException: I/O error on PATCH request Для решения проблемы следует добавить зависимость: И создавать RestTemplate следующим образом: Spring инициализация Запуск своего кода при загрузке Spring i18n Internalization Поддержка языков при использовании Spring Boot. Достаточно определить бин: И разместить бандлы в указанном месте (locale/messages/app). Т.е.:…

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

Резервное копирование данных пользователей по сети. Часть 2

Резервное копирование данных пользователей по сети. Часть 2

Первая часть была здесь Спойлер: данная статья написана о первой версии программы. В настоящее время я развиваю данный проект: пофиксил баги, сделал UI, проработал документацию и собрал установщики! Добро пожаловать на сайт: netbackup.blog.knasys.ru В этой части расскажу как можно приготовить сервер для бакапов. Сразу прошу прощения за качество изображений — делал на скорую руку. Имеется: 4 HDD на 1 Tb Материнка ASUS H81M-R Процессор Intel Celeron (2,4 GHz вроде) DDR3 4Gb Чтобы не быть пиратом и не тратить лицензию на…

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

Резервное копирование данных пользователей по сети. Часть 1

Резервное копирование данных пользователей по сети. Часть 1

Спойлер: данная статья написана о первой версии программы. В настоящее время я развиваю данный проект: пофиксил баги, сделал UI, проработал документацию и собрал установщики! Добро пожаловать на сайт: netbackup.blog.knasys.ru Давно вынашивал идею как-то бакапить данные пользовательских компьютеров в своей организации на случай внезапного отказа жесткого диска/нападения шифровальщиков/и т.п. Сначала думал сделать каждому пользователю сетевой диск для хранения важных данных, но как-то не зашло. Потом начал копать в сторону специализированных программ для резервного копирования: есть  множество решений, но либо они бесплатные…

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

Linux не видит сеть. Не удалось получить список доступных на сервере ресурсов

Linux не видит сеть. Не удалось получить список доступных на сервере ресурсов

На некоторых дистрибутивах Linux после учтановки — приложение «Файлы» не видит сеть Windows. При попытке открыть её, либо молча открывается пустая директория с надписью типа папка пуста, либо показывается сообщение об ошибке типа: «Не удалось получить список доступных на сервере ресурсов», не удалось открыть «Сеть Windows» или что-нибудь подобное. Конечно можно обойтись прямым обращением к хосту как описано здесь http://programmingandnotonly.blogspot.com/2017/11/windows-linux-mint.html, но это «такое». Данное поведение я обнаружил на свежеустановленных Centos 8 Desktop и Fedora 31 Workstation, и очень расстроился, т.к….

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