powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Синхронизировать справочник в коде и справочник в БД
16 сообщений из 16, страница 1 из 1
Синхронизировать справочник в коде и справочник в БД
    #39345589
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!
Столкнулся со следующей ситуацией, что у нас есть справочники в Java коде (представлены могут быть по разному, как правило final static константы или enum'ы) и есть соответствующая таблица справочник в БД, и как ни крути они нужны и тут и там.
Подскажите, встречается ли в вашей практике такие ситуации?
Используете какие-либо механизмы валидации/автоматической синхронизации, что справочник в коде совпадает со справочником в БД?
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345598
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirи как ни крути они нужны и тут и там
а данные из БД не нужны и тут и там?
just_vladimirсправочник в коде
покажи
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345601
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimir,

Если справочник в БД, то константы в коде идут лесом. Всё просто же.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345615
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczjust_vladimir,
Если справочник в БД, то константы в коде идут лесом. Всё просто же.
Дак вот что то пока плохо себе представляю как их лесом то отправить, вот есть код, в котором switch/case или просто какая-нибудь конструкция на базе if/else, что мне с ней делать?
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345617
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirДак вот что то пока плохо себе представляю как их лесом то отправить, вот есть код, в котором switch/case или просто какая-нибудь конструкция на базе if/else, что мне с ней делать?
Железная линейка + HashMap<Value, Action>
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345618
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну в самом тупом случае, мне нужно с каждой записью (строчке в таблице, элементе в графе, да где угодно) сопоставить некоторую иконку, которая определяется типом элемента, типы элемента это записи в таблице справочнике, какие будут предложения на этот счет?
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345620
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirНу в самом тупом случае, мне нужно с каждой записью (строчке в таблице, элементе в графе, да где угодно) сопоставить некоторую иконку, которая определяется типом элемента, типы элемента это записи в таблице справочнике, какие будут предложения на этот счет?
запись_в_таблице.svg
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345629
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowiczjust_vladimirНу в самом тупом случае, мне нужно с каждой записью (строчке в таблице, элементе в графе, да где угодно) сопоставить некоторую иконку, которая определяется типом элемента, типы элемента это записи в таблице справочнике, какие будут предложения на этот счет?
запись_в_таблице.svg
Ну так себе решение, а если для одного типа мне нужен один перечень пунктов контекстного меню, а для другого типа другой перечень пунктов контекстного меню?
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345631
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirНу так себе решение, а если для одного типа мне нужен один перечень пунктов контекстного меню, а для другого типа другой перечень пунктов контекстного меню?
Это БЛ, а не справочник.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345664
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirНу так себе решение, а если для одного типа мне нужен один перечень пунктов контекстного меню, а для другого типа другой перечень пунктов контекстного меню?
По-хорошему вы заводите класс, на каждую запись в базе. Внутри класса есть ключ, который однозначно ассоциируется с записью в БД. Ключ, очевидно, нужно использовать натуральный, а не синтетический. Во время запуска находите все такие классы и складываете в Map.
Для тех кто использует if/else и switch с такими словарями и нужна железная линейка. Для каждой новой записи в БД, вам придется искать все такие условия по коду и добавлять в них блоки. Вместо того чтобы написать 1 новый класс с логикой нового элемента.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345690
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВнутри класса есть ключ, который однозначно ассоциируется с записью в БД. Ключ, очевидно, нужно использовать натуральный, а не синтетический. Во время запуска находите все такие классы и складываете в Map.
Ну вот мы и пришли к тому, с чего начали, у нас есть ключ внутри класса и есть запись в БД, за синхронность которых я и переживаю.
Про то, что он в идеале должен быть натуральным это согласен, тогда вероятность проблемы становится гораздо ниже, но, к сожалению, не всегда так получается сделать.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345699
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirПро то, что он в идеале должен быть натуральным это согласен, тогда вероятность проблемы становится гораздо ниже, но, к сожалению, не всегда так получается сделать.
А что там переживать? При инициализации, собрали Map, сравнили с БД и дальше по вашей бизнес-логие: fault, warning или email админу.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345708
just_vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczА что там переживать? При инициализации, собрали Map, сравнили с БД и дальше по вашей бизнес-логие: fault, warning или email админу.
ок, спасибо, вариант понял, валидация на старте приложения.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345719
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirза синхронность которых я и переживаю.
Как сказать. Стандартная работа программиста.
Например, когда я ввожу новый тип в БД под кодом 12345 и в VIEW прописал иконку delete.gif на этот тип,
то понятно, что если я забуду закинуть на веб сервер иконку, то ошибок и райзе не будет.
Такой уж у нас JS.
Поэтому я просто помню и должен это прописать и проверить\протестировать.
Потом отдел тестирования.
...
Автомат тут не поможет.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345798
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirок, спасибо, вариант понял, валидация на старте приложения.
Ну, тут важно понимать откуда наполняется справочник и где он первичен, а где вторичен. Например, если БД его особо не использует, вы можете наполнять справочник из кода при той же инициализации. И тогда в коде можно иметь полноценный Enum.
Но не зная требований сложно сказать какое решение подходит именно в вашей ситуации.
...
Рейтинг: 0 / 0
Синхронизировать справочник в коде и справочник в БД
    #39345970
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
just_vladimirИспользуете какие-либо механизмы валидации/автоматической синхронизации, что справочник в коде совпадает со справочником в БД?
Мы использовали самописный maven-плагин который обновлял Java-код модуля на основании данных
из БД. Сорцов дать не могу (сорян) но решение не эксклюзивное. Думаю таких много. Погуглите.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Синхронизировать справочник в коде и справочник в БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]