#1 29.06.08 01:08
[Как?] Развёртывание веб-приложения на клиентской машине.
Имеется веб-приложение (Java-сервлет), разработанное на домашнем компьютере.
Задача в том, чтобы перенести и развернуть его на машине "заказчика".
Инструментарий - Apache Tomcat 5, MySQL 4, Java 1.5 (на обеих машинах).
По сути от меня требуется только воссоздать на SQL-сервере Базу с 2-мя таблицами (данные переносить не нужно, только структуру). Остальное в принципе решается тупым копированием папки с приложением в соответсвующий каталог контейнера сервлетов (Tomcat) и правкой XML-конфига (или есть другой "папский" вариант??).
Как наиболее изящно провернуть этот SQL-запрос... скрипт там поюзать какой-нибудь или еще чего? добавлять такой запрос в исходный код приложения ой как не хочется :)) Натолкните на мысль...
Offline
#3 01.07.08 17:45
Re: [Как?] Развёртывание веб-приложения на клиентской машине.
otaku, да да, именно это я и хотел сделать, просто не знал каким макаром. Сделал файл dump.sql с запросами:
Код: sql:
DROP TABLE `users`; DROP TABLE `todo`; CREATE TABLE `users` ( `user_id` int(11) NOT NULL AUTO_INCREMENT, `login` text NOT NULL, `password` text NOT NULL, PRIMARY KEY (`user_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; CREATE TABLE `todo` ( `id` int(11) NOT NULL AUTO_INCREMENT, `entry_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, `expiration_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00', `owner_id` int(11) NOT NULL DEFAULT '0', `description` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
запуск через батник:
Код::
"%MYSQL_BIN%\mysql" --force --user=%USER% --password=%PASS% --database=%DBASENAME% < dump.sql
Правда потом наткнулся в инете на платформонезавсимый скриптовый инструмент ANT (от Apache), и теперь этот скрипт выглядит примерно так
Код: xml:
... <property name="database.host" value="localhost"/> <property name="database.port" value="3306"/> <property name="database.name" value="test"/> <property name="database.user" value="user"/> <property name="database.password" value="55555"/> ... <!-- Create needed tables in specified Database at MySQL server --> <target name="db" depends="deploy"> <sql classpath="./WEB-INF/lib/mysql-connector-java-3.1.11-bin.jar" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://${database.host}:${database.port}/${database.name}" userid="${database.user}" password="${database.password}" src="./WEB-INF/mysql/dump.sql" onerror="continue"> </sql> </target> ...
в общем решение найдено, тему можно прикрыть ;)
Offline

