|
0 / 0 / 0
Регистрация: 01.09.2009
Сообщений: 12
|
|
Клиент, который выбирает данные из списка..Совет.14.12.2009, 18:37. Показов 1928. Ответов 12
Метки нет (Все метки)
Здравствуйте!
Как быть в такой вот ситуации. У меня есть БД в которой есть куча справочников, то есть к примеру есть справочники в которых хранятся все имена, фамилии,странны, области, районы.... Это сделано для того чтобы избежать ошибок при вводе клиентом данных в БД. Вот стал вопрос о написании клиента. Хотелось бы чтобы клиент выберал из списка возможные варианты и не мог ничего добавить своего дабы не допустить ошибку. Но в таком случаи я должен заполнять эти списки вариантами из этих справочников. Причем вот допустим есть четыре комбобокса. В первом клиент выберает страну, во второй после выбора страны загружаются все области этой страны которые есть в списке, потом клиент выберает область в третий комбобокс загружаются все районы выбранной области ну и с населенным пунктом также. Получается что я постоянно должен делать сетевые запросы на выборку данных из справочников и потом заполнять этими данными комбобоксы. Получается загружаю сеть и еще заставляю клиента ждать пока загрузятся все районы выбранной области(задержка небольшая но все же). Вот в той же самой Delphi так там происходит кеширование(если я не ошибаюсь) на стороне клиента. Но я не хотел бы мешать логику представления данных с бизнес логикой. Хотел бы чтоб мой клиент лиш представлял данные а бизнес логикой занимались EJB компоненты. Подумал JSP(Servlet) отпадают не хочу возится с JavaScript получается либо приложение либо Applet. Но как быть с загрузкой сети одними и теми же вызовами выборки из справочников для заполнением комбобоксов? Я уверен, что кто то сталкивался с подобной проблемой ведь справочники используются давольно часто. Как быть? Back to Topic List Topics: [ Previous | Next ] [ Справка | Условия ] Copyright © 1999 — 2003, J
0
|
|
| 14.12.2009, 18:37 | |
|
Ответы с готовыми решениями:
12
Создание просто парсера, который выбирает друзей в ВК
|
|
mishgun
|
|
| 15.12.2009, 02:39 | |
|
А почему jsp отпадает я не понял?
С апплетом вам придется поиметь кое какие проблемы так как его надо подписывать и прочее да и потом менеджеры безопасности браузров ведут себя неадекватно.Да и происходить загрузка апплета будет дольше чем jsp например,ну а если всё таки апплет то в этом топике уже обсуждался данный вопрос единственно что вам надо сделать это из jsp сделать апплет.То есть наляпать гуи юрл вот - http://relib.com/forums/topic.asp?id=759046 |
|
|
mishgun
|
|
| 15.12.2009, 02:43 | |
|
И потом я не понял какое отношение JavaScript имеет к jsp/servlets.Может я отсталый совсем но насколько я помню то никакого отношения она не имеет
|
|
|
1 / 1 / 1
Регистрация: 03.06.2008
Сообщений: 101
|
|
| 15.12.2009, 06:43 | |
|
2 itaa:
Ну а что мешает сделать кэширование 'как в Delphi' на стороне клиента? Вряд ли это можно назвать бизнес логикой
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2009
Сообщений: 12
|
|
| 15.12.2009, 10:01 [ТС] | |
|
2 mishgun
>И потом я не понял какое отношение JavaScript имеет к jsp/servlets. >Может я отсталый совсем но насколько я помню то никакого отношения >она не имеет Может я отстал. Давно не писал клиентских приложений. Как осуществить без JavaScript следующее. В первом комбобоксе выбираем ОБЛАСТЬ потом во втором появляются все районы этой области. Эти комбобоксы должны быть на одной странице. Я себе представляю это так: Пусть комбобокс содержащий все области сразу появляется на странице. Для того чтобы сразу после выбора области в комбобоксе(без нажатия submit) во второй комбобокс загрузились районы выбранной области я думаю нужно делать обработчик события комбобокса и в нем отправлять выбранную область на сервер. А потом наверно еще и обновлять страницу. Может я и не прав.
0
|
|
|
0 / 0 / 0
Регистрация: 01.09.2009
Сообщений: 12
|
|
| 15.12.2009, 10:10 [ТС] | |
|
to space_center
Согласен можно, мало того по моему другого выхода нет. Но честно говоря лень. Получается, что на каждый справочник нужно делать кещь. Расскажи в нескольких словах как бы ты его организовал.
0
|
|
|
1 / 1 / 1
Регистрация: 03.06.2008
Сообщений: 101
|
|
| 15.12.2009, 12:41 | |
|
Если использование твоих комбобоксов в приложении единично, допустим для регистрации, то в данном случае выгоднее будет пересылать связанные данные по сети. В случае если работа с этими комбо происходит регулярно, допустим указываем критерии поиска, то тогда выгоднее (в отношении трафика сети) один раз загрузить необходимые справочники и проводить выборку непосредственно на стороне клиента, но тогда и клиент у тебя начинает 'толстеть' 8).
0
|
|
|
mishgun
|
|
| 16.12.2009, 05:47 | |
|
Я бы сделал так
написал бы я JavaBean у которого было бы scope='session' и в него бы грузил из базы усё что надо а в комбобоксы(что видимо есть select в html) грузил бы данные из Бина в котором в ArrayList или что нить ещё типа вектора засовывал данные.То есть их по идее должно быть четыре(ечли я праильно понял то у вас 4 таблицы вот и дергайте данные из них и засовывайте их в вектора а потом в хтмл-ские комбобоксы)Тогда бы никто не толстел.У каждого юзера был бы свой бин....Если чё кричите будем мозговать ещё ))Но по-моему общая структура понятна
|
|
|
1 / 1 / 1
Регистрация: 03.06.2008
Сообщений: 101
|
|
| 16.12.2009, 09:26 | |
|
2 mishgun:
Это в случае если jtaa выберет jsp/servlet, но тогда чтобы загрузить новые значения комбобокса надо делать запрос к серверу, а это как бы не подходит, т.к. 'сетевой трафик' 8) И вообще почему бы сразу не сделать бину scope='application' тогда на всех пользователей будет один набор справочников, что помоему выгодней.
0
|
|
|
mishgun
|
|
| 17.12.2009, 01:58 | |
|
Я исходил из варианта если автору надо загружать конкретному юзеру конкретно.Если нет то аппликейшен конечно выгоднее
|
|
|
mishgun
|
|
| 17.12.2009, 02:00 | |
|
а по поводу на чем остановится апплет или серверное приложение то я за сервреное приложение.Код аплета ведь и ракомпиллировать можно а там тебе весь набор и имя базы и адресок и таблицы...Можно конечно хранить это в каких нибудь проперти файлах но всё равно с точки зрения безопасности лучше серверное приложение
|
|
|
anele
|
|
| 27.12.2009, 11:33 | |
|
Хочу спросить. Событие, когда пользователь выбирает из комбобокса страну, а потом в другом комбобоксе загружаются все области выбранной страны, обрабатывается функцией JavaScript. А можно ли в обработчике этой функции выбрать из бина области данной страны? То есть пишу объявление функции на JavaScript, потом вставляю код на Java в обычных тегах jsp?
|
|
|
4 / 4 / 4
Регистрация: 28.08.2008
Сообщений: 611
|
|
| 28.12.2009, 11:49 | |
|
Думаю, можно, даже, млжно сказать, почти уверен
) Только каждый комбо-бокс - в своем фрейме или i-фрейме. Тогда перегружаем только фрейм. Но без запроса к веб-серверу и перезагрузки фрейма все равно не обойтись )
0
|
|
| 28.12.2009, 11:49 | |
|
Помогаю со студенческими работами здесь
13
Запрос Distinct, который по нажатию кнопки выбирает из документа не одинаковые имена пользователей Выборка из БД выбирает не все данные Linq не правильно выбирает данные Скрипт не выбирает данные из базы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|