1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/pengminghua-openhandx-common

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

OpenHandx-common

  1. Введение

OpenHandx-common объединяет методы и инструменты, которые часто используются в повседневной разработке, а также является базовым общим классом серии OpenHandx. Он включает в себя:

  • многопоточность;
  • JMS-соединение пула;
  • соединение пула для нескольких источников данных;
  • пользовательские выражения для вычислений;
  • древовидную структуру алгоритма;
  • контекстное управление;
  • сжатие и распаковка данных;
  • шифрование и дешифрование данных;
  • анализ и генерацию XML;
  • передачу данных через UDP;
  • преобразование данных и другие инструменты. Common будет постоянно дополняться по мере развития последующих проектов. Поскольку Common — это базовый пакет инструментов, его использование просто. Достаточно ознакомиться с документацией (Javadoc). В этой статье мы рассмотрим несколько основных инструментов. После версии 1.04 значительно улучшена совместимость функций запросов модели, поддерживаются основные базы данных SQL Server, Oracle, Sybase и MySQL. Также добавлена поддержка пулов соединений WebService. После версии 1.05 выражение поддерживает строковые операции.
  1. Многопоточность

Многопоточность — это метод разработки, при котором программа разделяется на несколько подпрограмм, которые могут выполняться параллельно, что повышает общую эффективность кода. Однако одновременное выполнение множества многопоточных программ может привести к перегрузке ресурсов процессора или сервера, что снижает общую производительность программы и даже может вызвать сбой системы. Обратное многопоточное ядро также использует многопоточность, но оно разумно управляет ресурсами многопоточности для параллельного выполнения. Программа, запущенная первой, выполняется первой (многопоточное выполнение), и если позволяют ресурсы, другие программы также будут выполняться параллельно. Разработчику не нужно создавать потоки самостоятельно, как в однопоточной программе, но это быстрее, чем многопоточная программа.

  1. JMS-соединение пула

Классы пути JMS-соединения пула находятся в open.jms, и они могут управлять соединениями с несколькими серверами JMS, а также поддерживать различные типы драйверов JMS (JMS 1.1). Разработчики могут отправлять и получать сообщения от JMS-сервера без необходимости глубокого понимания деталей JMS.

  1. Соединение пула для нескольких источников данных

Классы путей соединения пула для нескольких источников данных находятся в open.database. Каждый пул соединений отвечает за распределение, управление и освобождение соединений с базой данных. Поддерживаются тайм-ауты простоя и автоматическое переподключение при прерывании соединения.

  1. Пул соединений WebService в OpenHandx-unreal

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

  1. Пользовательские выражения вычислений

Классы пользовательских выражений вычислений находятся в open.calculate. Они выполняют вычисления на основе пользовательских формул, используя BigDecimal для обеспечения точности вычислений. Поддерживаются операции сложения, вычитания, умножения, деления, скобки, логические операции, условные операторы, математические функции, абсолютные значения, квадратные корни, экспоненты, логарифмы, максимальные и минимальные значения и т. д. Кроме того, выражения поддерживают переменные, позволяя разработчикам создавать новые функции для вычислений.

  1. Модель данных

Модель данных находится в open.model. Основная функция модели данных — сохранение записей базы данных. Хотя многие разработчики используют объекты Pojo, объектно-ориентированный подход к моделированию предметной области хорош, но на практике он не всегда эффективен. Модели с недостаточным количеством объектов имеют ограниченную ценность, в то время как модели с избыточным количеством требуют от разработчиков достаточных навыков абстракции и проектирования. Кроме того, требования отечественных проектов часто меняются, и плохо спроектированные модели трудно адаптировать к изменениям. Модель данных OpenHandx ориентирована на данные и легко понятна, она поддерживает запросы, группировку, сортировку и другие функции. Модели данных делятся на три типа:

  • модель хранения одной записи;
  • модель хранения нескольких записей (неустойчивая и устойчивая);
  • составная модель хранения данных.
  1. Анализ и генерация XML

Анализ и генерация XML включают:

  • 8.1 Анализ XML. Класс анализатора XML open.xml.XmlReader может считывать символы XML или файлы в объекты значений Pojo. Разработчикам требуется всего несколько строк кода для завершения работы, без необходимости разбираться в сложных инструментах анализа DOM. В настоящее время XmlReader поддерживает основные типы данных Java, интерфейс List, пользовательские Pojo и вложенные структуры. XmlReader поддерживает атрибуты и описания.
  • 8.2 Генерация XML. Генератор XML open.xml.XmlWriter является обратным процессом XmlReader. Он может генерировать символы или файлы XML из объектов Pojo. В настоящее время XmlWriter также поддерживает основные типы данных Java, интерфейс List, пользовательский Pojo и вложения. XmlWriter также поддерживает атрибуты и описания. Его преимущество заключается в возможности изменения XML во время выполнения программы, что позволяет изменять конфигурацию.
  1. Класс метода инструментального класса

Класс метода инструментального класса open.tools.classmethod.ClassMethod может получать методы get и set определённого класса, а также выполнять операции получения и установки значений этих методов в соответствии с именами методов, типами параметров и именами параметров.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

OpenHandx-common собрал методы и инструменты, которые часто используются в повседневной разработке. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/pengminghua-openhandx-common.git
git@api.gitlife.ru:oschina-mirror/pengminghua-openhandx-common.git
oschina-mirror
pengminghua-openhandx-common
pengminghua-openhandx-common
master