Spec-Zone.ru › OpenJDK 21

Пакет javax.script

package javax.script

API для скриптинга состоит из интерфейсов и классов, определяющих движки скриптов Java и предоставляющих фреймворк для их использования в приложениях Java. Данный API предназначен для использования программистами приложений, желающими выполнять программы, написанные на языках сценариев, в своих приложениях Java. Программы на языке сценариев обычно предоставляются конечными пользователями приложений.

Основные функциональные области пакета javax.script включают

  1. Выполнение скрипта: Скрипты представляют собой потоки символов, используемые в качестве источников программ, выполняемых движками скриптов. Выполнение скриптов использует методы eval интерфейса ScriptEngine и методы интерфейса Invocable.

  2. Связывание: Эта возможность позволяет предоставлять объекты Java программам на языке сценариев в качестве именованных переменных. Для этой цели используются классы Bindings и ScriptContext.

  3. Компиляция: Эта функциональность позволяет хранить и многократно выполнять промежуточный код, генерируемый передней частью движка скриптов. Это выгодно для приложений, выполняющих один и тот же скрипт многократно. Такие приложения могут повысить эффективность, так как передние части движков скриптов должны выполняться только один раз на скрипт, а не один раз на каждое выполнение скрипта. Обратите внимание, что эта функциональность является необязательной, и движки скриптов могут ее не реализовывать. Вызывающие стороны должны проверять наличие интерфейса Compilable с помощью проверки instanceof.

  4. Вызов: Эта функциональность позволяет повторно использовать промежуточный код, генерируемый передней частью движка скриптов. В то время как компиляция позволяет повторно выполнять целые скрипты, представленные промежуточным кодом, функциональность вызова позволяет повторно выполнять отдельные процедуры/методы в скриптах. Как и в случае с компиляцией, не все движки скриптов обязаны предоставлять эту возможность. Вызывающая сторона должна проверять доступность интерфейса Invocable.

  5. Обнаружение движков скриптов: Приложения, написанные для API скриптинга, могут иметь специфические требования к движкам скриптов. Некоторые могут требовать определенный язык сценариев и/или версию, а другие могут требовать определенный движок реализации и/или версию. Движки скриптов упаковываются определенным образом, чтобы движки можно было обнаружить во время выполнения и запросить их атрибуты. Механизм обнаружения движков основан на механизме загрузки поставщика услуг, описанном в классе ServiceLoader. Класс ScriptEngineManager включает метод getEngineFactories для получения всех экземпляров ScriptEngineFactory, обнаруженных с помощью этого механизма. ScriptEngineFactory содержит методы для запроса атрибутов движка скрипта.

Since:
1.6
Класс Описание
AbstractScriptEngine
Предоставляет стандартную реализацию для нескольких вариантов метода eval.
Bindings
Сопоставление пар ключ/значение, все ключи которых Strings.
Compilable
Необязательный интерфейс, реализуемый ScriptEngines, чьи методы компилируют скрипты в форму, которая может быть выполнена повторно без повторной компиляции.
CompiledScript
Расширяется классами, которые хранят результаты компиляций.
Invocable
Необязательный интерфейс, реализуемый ScriptEngines, чьи методы позволяют вызывать процедуры в скриптах, которые были ранее выполнены.
ScriptContext
Интерфейс, реализующие классы которого используются для подключения движков скриптов к объектам, таким как области видимости Bindings, в принимающих приложениях.
ScriptEngine
ScriptEngine — это основной интерфейс, методы которого должны быть полностью функциональными в каждой реализации этого спецификации.
ScriptEngineFactory
ScriptEngineFactory используется для описания и создания ScriptEngines.
ScriptEngineManager
Класс ScriptEngineManager реализует механизм обнаружения и создания классов ScriptEngine и также поддерживает коллекцию пар ключ/значение, хранящих состояние, общее для всех движков, созданных менеджером.
ScriptException
Общий класс Exception для API скриптинга.
SimpleBindings
Простая реализация Bindings, поддерживаемая HashMap или каким-либо другим указанным Map.
SimpleScriptContext
Простая реализация ScriptContext.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.scripting/javax/script/package-summary.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API