Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Виндовс Сервис из С++ на Джаву


Автор: Andy_L20066 22.10.2010, 20:28
Привет

вообщем эсть такая проблема (не спрашивайте зачем такое, сам не знаю smile ): 
эсть виндовс сервис на С++ который работает в Винде, сервис периодически лазит в Базу через ADO (то же самое что и JDBC) (SQL, Oracle), берет данные оттуда, обрабатывает их, и пишет назад в базу....

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

вообщем о таких вариантах думаю:
1) это написать какой то демон процес, использовать стандартный Java.util.Timer... тоэсть что то типа джарки как конечный продукт...
2) тут на форуме нарыл информацию о такой теме как Excelsior JET (с помощью него мона написать сервис который можно будет включить/выключить из служб),  но он платный по идее эсли подразумевается работа для всех платформ http://www.excelsior-usa.com/jet.html)

Какие еще могут быть варианты? 






Автор: Vasay 22.10.2010, 20:44
Andy_L20066, 

Цитата

2) тут на форуме нарыл информацию о такой теме как Excelsior JET 


Есть GCJ он бесплатный - http://gcc.gnu.org/java/


Но! Я не особо разбираюсь в винде, но что мешает сделать службой Java программу? (т.е. саму Java.exe c параметром "-jar ваша_программа.jar") ? 

Автор: aleksandy 22.10.2010, 20:57
Пишешь простое консольное приложение, которое делает все, что нужно. Далее пакуешь его в jar и создаешь bat-ник для запуска. При помощи http://support.microsoft.com/kb/137890

Автор: Andy_L20066 24.10.2010, 11:31
Цитата

Но! Я не особо разбираюсь в винде, но что мешает сделать службой Java программу? (т.е. саму Java.exe c параметром "-jar ваша_программа.jar") ?  

в принципе ничего не мешает... просто хотел узнать может эсть какие то уже готовые подходы (виндовозные всякие штучки) для решения подобных задач

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)