![]() |
Коннект к Oracle из Flex
Доброе утро!
Есть приложение, созданное на Flex Builder. Необходимо из него законнектиться к Oracle, передать туда SQL и соответственно вернуть из Oracle некий DataSet для отображения его в Flex - приложении. Пока нашла только "кривое" решение: из Flex дергать сервис, который весь результат выполнения SQL запихивает в XML-файл. А Flex уже отображает данные из этого файла (при каждом новом запросе файл будет заменяться). Но это решение не подходит по той причине, что данных может быть ОЧЕНЬ много и на формирование такого файла и соответствующее его отображение уйдет слишком много времени. Должна же быть возможность сделать это как-то проще. Никто не сталкивался с этим? |
Есть вариант, не слать сразу ОЧЕНЬ много данных. По-моемсу это вопрос не совсем по флексу.
ЗЫ А что хмл-файл так и сохраняется где-то на сервере, а потом его забирает флекс? |
Формируешь запрос к серверу (java, php), на сервере обрабатываешь запрос, формируешь строку в виде xml, отсылаешь ответом. Во flex, получим xml, присваиваешь dataProvider-у DataGrid-а.
Код:
private var myXML:XML = new XML(); |
Самое простое и удобное решение работать через RemoteObject :umnik2:
XML отпадает в этом случае. Как уже тут написал Bruiser, для работы с БД нужно всю бизнеслогику по работе с БД выносить на сервер. Серверная часть может быть написана на чём угодно. Цитата:
|
Я только начинаю изучать Flex, до этого интерфейс делали другими средствами. До последнего надеялась, что у Flex есть какое-нибудь встроенное визуальное средство для работы с БД, как у того же C++ Builder или .NET хотя бы... Эх :(
Пейджинг, я так понимаю, надо делать самим? Никаких встроенных средств у DataGrid нет? |
Flex - это все-таки среда для разработки интерфейса, а не бизнес-логики.
|
Цитата:
Нужно понять два момента: 1) ClientSide - это всё, что у клиента будет. В данном случае это- Flash 2) ServerSide - это, если нужно работать с БД, посылать почту, обрабатывать большие массивы данных, работать с сенсорами и так далее. Реализацию этих задач выполняют с помощью языков, которые это позволяют. Если нужно использовать .NET фреймвёрк, значит устанавливаем MVS2008 (к примеру) и пишем всё с комфортом. Всё, что будет написано потом вызывается из Flash приложения. Цитата:
Надеюсь, поможет. :umnik2: |
Я уже писал BeautifulGirl, на другом форуме...
Имхо, самый простой способ - это напрямую обращаться к Oracle либо через HTTP сервис, либо через Apex. Решение будет зависить от требований безопасности. Есть еще всякие livecycle data services, но для этого понадобится сервер приложения. Если же промежуточное звено - не проблема, то реализуйте его на том, на чем вам удобнее - .NET тот же вполне подходит. По поводу "очень много данных": как правило клиентское приложение не требует большого количества данных. Т.е. пользователь не в состоянии визуально переварить больше чем 20 записей допустим. Поэтому приложение нужно проектировать так, чтобы не гонять между базой и приложениям мегабайты холостой информации. Добавлено через 49 часов 40 минут Написал пример http://alp-it.ru/2009/02/simple-oracle-flex-connecting/ Удачи! |
| Часовой пояс GMT +4, время: 18:56. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.