Интеграция Java из MDB в WebApp - PullRequest
0 голосов
/ 11 декабря 2010

У нашего клиента есть клиент-серверное приложение, основанное на базе данных mdb (доступ в Microsoft), и он хотел бы предоставить часть данных через свой веб-сайт (развернут в java).Каков наилучший способ достичь этого?Мне нужно место для начала (например, веб-сервис, интеграция с Spring, mule, сервис-микс).

Ответы [ 3 ]

2 голосов
/ 12 декабря 2010

Если веб-сервер в настоящее время расположен в локальной сети вашего офиса, и приложения внешнего доступа могут использовать / видеть папку, в которой находится внутренний файл mdb (мы говорим здесь о сети Windows), то теоретически вы могли бы выставить некоторые из этих данных на веб-сервер, если загрузка веб-сервера и уровень использования не будут слишком высокими.

В случае, если сервер не будет находиться в одной и той же сети Office, то часто используемое разумное решение состоит в простом удалении внутренних данных и их перемещении на некоторый сервер базы данных, такой как сервер SQL, или MySQL. Когда вы сделаете это, то оба приложения доступа (передняя часть), таким образом, продолжат работать и работать как прежде. И теперь веб-сайт также может делиться этими данными. Этот так называемый процесс изменения размера данных доступа не сложен, но вам нужен компетентный разработчик доступа, который знает как SQL-сервер, так и доступ, и многократно увеличивал размер. Если разработчик проделывал это много раз, то в большинстве случаев это не большая работа по переносу данных на сервер и сохранению инвестиций в существующий код.

Таким образом, ваш выбор - сохранить код доступа и базу данных как есть, а просто переместить данные из доступа в серверную систему. Как уже отмечалось, другой альтернативой является случай, когда ваш веб-сервер подключен к той же сети, в которой находятся данные доступа, и теоретически было бы просто разместить внутренние данные доступа на том же сервере, что и веб-сервер. Эта настройка позволит как локальным пользователям в сети Office, так и веб-серверу обмениваться данными и использовать их в файле бэкэнда доступа.

Другой альтернативой, конечно, является доступ к серверу базы данных, который вы используете в веб-системе, например, MySQL SQL-сервера. Поскольку доступ может подключаться к серверу базы данных таким способом, теоретически возможно перетасовать данные в заранее определенное время или даже во время использования для извлечения данных, собранных с веб-сайта, в приложение доступа. Таким образом, вы оставляете Access как есть, но подключаете его к веб-части, которая собирает необходимые данные.

Какой из представленных выше вариантов имеет смысл, будет зависеть от ваших конкретных обстоятельств.

Чтобы по-настоящему разгадать этот микс, access for 2010 может создавать масштабируемые облачные вычислительные системы, в которых данные основаны либо на Azure SQL, либо даже на 100% веб-основе, если у вас есть SharePoint. Фактически, когда вы публикуете базу данных для доступа к sharepoint, в результате получаются формы .net XAML (zammel) и масштабируемая система с точки зрения пользователей. В следующем видео вы скажете, что на полпути я переключаюсь на полное запуск приложения доступа в браузере:

http://www.youtube.com/watch?v=AU4mH0jPntI

Для осуществления вышеуказанного доступа к веб-разработке вы будете использовать SharePoint. Однако, если в вашей организации уже есть SharePoint, это может быть разумной возможностью для вас.

0 голосов
/ 11 декабря 2010

Я считаю, что вы немного разочарованы.MDB - это компонент, управляемый сообщениями.Это не база данных.Это способ прослушивания места назначения JMS и выполнения некоторых действий, управляемых сообщениями JMS.Данные уже должны быть сохранены где-то в БД.Если они используют MDB, то это приложение Java EE.

Теперь о сайте.Какие технологии используются для сайта?Если это технологии на основе Java, ваша жизнь проще, потому что сайт также является приложением Java EE.В этом случае у вас фактически есть 2 приложения Java EE.Если все это правильно, вы можете

  1. объединить их.В этом случае вы можете просто вызвать «приложение на основе mdb» из серверной части веб-сайта.
  2. Также вы можете вызвать одно приложение из другого.Выполните удаленный вызов EJB или представьте часть API как веб-сервис и вызовите его.Или даже подключиться к очереди «mdb application» с сайта и отправлять сообщения.

Если сайт не написан на Java, используйте веб-сервисы или подключитесь к очереди.

Обычно у вас много возможностей.Но трудно порекомендовать что-то конкретное без дополнительных подробностей.Я надеюсь, что этот ответ немного помог вам.Если вам нужна дополнительная помощь, пожалуйста, предоставьте детали.

0 голосов
/ 11 декабря 2010

Вы можете подключиться к вашей базе данных ACCESS с помощью Java через мост JDBC-ODBC.

Шаги для этого будут:

  1. На вашем сервере (на котором размещено ваше веб-приложение Java) создайте запись ODBC, указывающую на ваш файл ACCESS. Назовите это mdbodbcaccess.
  2. Затем подключитесь к этой записи ODBC из Java с помощью JDBC.

Примерно так:

//
// points to the entry you've just created
//
Connection conn = DriverManager.getConnection("jdbc:odbc:mdbodbcaccess"); 
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery("select f1, f2 from table");
while (rs.next()) {
    // iterate your resultset and do something with it
    System.out.println(rs.getString("f1"));
}
rs.close();
st.close();
conn.close();

Кроме того, вы можете использовать пул соединений с вашего сервера приложений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...