При создании прикладных программ, работающих с базой данных, довольно часто возникает необходимость выгрузки данных в какой-нибудь текстовый редактор, который может быть использован для корректировки информации и печати получившегося документа. В этой статье я расскажу, как решил эту задачу для себя, используя язык программирования Java и офисный пакет OpenOffice.org, что позволило обеспечить кроссплатформенность этого решения.
Для начала необходимо, что бы был установлен OpenOffice.org 3 версии, ну и разумеется JDK со средой разработки, или кому как нравится.
Для разработки понадобятся следующие библиотеки OpenOffice.org:
Библиотеки juh.jar, jurt.jar, ridl.jar, unoil.jar и unoloader.jar представляют собой необходимый набор классов API OpenOffice.org.
Библиотека bootstrapconnector.jar необходима для решения некоторых проблем, которые могут возникнуть во время подключения приложения к работающему экземпляру OpenOffice.org при определенных условиях. Подробнее об этих проблемах можно почитать здесь (на англ. яз), там же есть ссылка на саму библиотеку.
Когда всё установлено и все библиотеки подключены можно приступать к разработке. Приведу пример рабочих классов и методов для работы с OpenOffice.org Calc и OpenOffice.org Writer.
Класс для работы с документами OpenOffice.org Calc
Этот класс позволяет открывать файлы *.ods и *.xls в OpenOffice.org Calc и осуществлять вставку текста, формул и значений в ячейки, обращаясь к ним по именам (А1, А2, B3 и т.п.).
Я не буду приводить пример всего класса для работы с документами OpenOffice.org Writer, т.к. он практически аналогичен классу OOCalcDocument. Различие заключаются лишь в том, что в классе для работы с OpenOffice.org Writer отсутствуют методы для работы с ячейками (insertTextIntoCellByName(...) и insertValueIntoCellByName(...)), вместо них есть методы для вставки и замены текста, которые описаны ниже.
Методы для работы с текстом в документах OpenOffice.org Writer
Оба класса можно использовать для работы с заранее подготовленными шаблонами документов. Подробнее о том, как создавать и использовать переменные в документах OpenOffice.org Writer можно посмотреть в статье Java + OpenOffice.org = генератор отчетов, ссылка на которую приведена ниже.
Возможно вам также будет интересна статья "Создание документа ODF с помощью ODFDOM Simple Java API".
При написании статьи была использована информация и исходные коды со следующих источников:
Для начала необходимо, что бы был установлен OpenOffice.org 3 версии, ну и разумеется JDK со средой разработки, или кому как нравится.
Для разработки понадобятся следующие библиотеки OpenOffice.org:
- juh.jar, jurt.jar, ridl.jar, unoloader.jar из каталога /opt/openoffice.org3/basis-link/ure-link/share/java (если OpenOffice.org установлен не из официальных репозиториев)
- unoil.jar из каталога /opt/openoffice.org3/basis-link/program/classes
- bootstrapconnector.jar, который можно скачать здесь
Библиотеки juh.jar, jurt.jar, ridl.jar, unoil.jar и unoloader.jar представляют собой необходимый набор классов API OpenOffice.org.
Библиотека bootstrapconnector.jar необходима для решения некоторых проблем, которые могут возникнуть во время подключения приложения к работающему экземпляру OpenOffice.org при определенных условиях. Подробнее об этих проблемах можно почитать здесь (на англ. яз), там же есть ссылка на саму библиотеку.
Когда всё установлено и все библиотеки подключены можно приступать к разработке. Приведу пример рабочих классов и методов для работы с OpenOffice.org Calc и OpenOffice.org Writer.
Класс для работы с документами OpenOffice.org Calc
Этот класс позволяет открывать файлы *.ods и *.xls в OpenOffice.org Calc и осуществлять вставку текста, формул и значений в ячейки, обращаясь к ним по именам (А1, А2, B3 и т.п.).
Я не буду приводить пример всего класса для работы с документами OpenOffice.org Writer, т.к. он практически аналогичен классу OOCalcDocument. Различие заключаются лишь в том, что в классе для работы с OpenOffice.org Writer отсутствуют методы для работы с ячейками (insertTextIntoCellByName(...) и insertValueIntoCellByName(...)), вместо них есть методы для вставки и замены текста, которые описаны ниже.
Методы для работы с текстом в документах OpenOffice.org Writer
Оба класса можно использовать для работы с заранее подготовленными шаблонами документов. Подробнее о том, как создавать и использовать переменные в документах OpenOffice.org Writer можно посмотреть в статье Java + OpenOffice.org = генератор отчетов, ссылка на которую приведена ниже.
Возможно вам также будет интересна статья "Создание документа ODF с помощью ODFDOM Simple Java API".
При написании статьи была использована информация и исходные коды со следующих источников:
отлично почитать.пишите еще
ОтветитьУдалить