模块  java.scripting
软件包  javax.script

Class SimpleScriptContext

  • 实现的所有接口
    ScriptContext

    public class SimpleScriptContext
    extends Object
    implements ScriptContext
    ScriptContext的简单实现。
    从以下版本开始:
    1.6
    • 字段详细信息

      • writer

        protected Writer writer
        这是用于从脚本输出的writer。 默认情况下, PrintWriter基于System.out使用。 访问器方法getWriter,setWriter用于管理此字段。
        另请参见:
        System.outPrintWriter
      • errorWriter

        protected Writer errorWriter
        这是用于从脚本输出错误的编写器。 默认情况下, PrintWriter基于System.err使用。 访问器方法getErrorWriter,setErrorWriter用于管理此字段。
        另请参见:
        System.errPrintWriter
      • reader

        protected Reader reader
        这是用于脚本输入的阅读器。 默认情况下, InputStreamReader基于System.in的使用和默认字符集是使用该阅读器。 访问器方法getReader,setReader用于管理此字段。
        另请参见:
        System.inInputStreamReader
      • engineScope

        protected Bindings engineScope
        这是引擎范围绑定。 默认情况下,使用SimpleBindings 访问器方法setBindings,getBindings用于管理此字段。
        另请参见:
        SimpleBindings
      • globalScope

        protected Bindings globalScope
        这是全局范围绑定。 默认情况下,使用空值(表示没有全局范围)。 访问器方法setBindings,getBindings用于管理此字段。
    • 构造方法详细信息

      • SimpleScriptContext

        public SimpleScriptContext()
        创建一个 SimpleScriptContext
    • 方法详细信息

      • setBindings

        public void setBindings​(Bindings bindings,
                                int scope)
        为给定范围设置Bindings属性。 如果范围的值为ENGINE_SCOPE则给定的Bindings替换engineScope字段。 如果范围的值为GLOBAL_SCOPE则给定的Bindings替换globalScope字段。
        Specified by:
        setBindings ,界面 ScriptContext
        参数
        bindings - 要设置的属性 Bindings
        scope - 设置属性的范围的值。
        异常
        IllegalArgumentException - 如果范围无效。
        NullPointerException - 如果scope的值为 ENGINE_SCOPE且指定的 Bindings为null。
      • getAttribute

        public Object getAttribute​(String name)
        检索在搜索顺序中最早发生的范围内具有给定名称的属性的值。 顺序由范围参数的数值确定(首先是最低范围值。)
        Specified by:
        getAttribute接口 ScriptContext
        参数
        name - 要检索的属性的名称。
        结果
        定义具有给定名称的属性的最低范围中的属性的值。 如果任何范围中都不存在具有该名称的属性,则返回null。
        异常
        NullPointerException - 如果名称为null。
        IllegalArgumentException - 如果名称为空。
      • getAttribute

        public Object getAttribute​(String name,
                                   int scope)
        获取给定范围内的属性的值。
        Specified by:
        getAttribute接口 ScriptContext
        参数
        name - 要检索的属性的名称。
        scope - 检索属性的范围。
        结果
        属性的值。 返回null是给定范围中不存在的名称。
        异常
        IllegalArgumentException - 如果名称为空或范围的值无效。
        NullPointerException - 如果名称为null。
      • setAttribute

        public void setAttribute​(String name,
                                 Object value,
                                 int scope)
        设置给定范围中属性的值。 如果范围是GLOBAL_SCOPE并且没有为GLOBAL_SCOPE设置GLOBAL_SCOPE ,则setAttribute调用是no-op。
        Specified by:
        setAttribute接口 ScriptContext
        参数
        name - 要设置的属性的名称
        value - 属性的值
        scope - 设置属性的范围
        异常
        IllegalArgumentException - 如果名称为空或范围无效。
        NullPointerException - 如果名称为null。
      • getBindings

        public Bindings getBindings​(int scope)
        如果指定的范围是ENGINE_SCOPE则返回engineScope字段的值。 如果指定的范围是GLOBAL_SCOPE则返回globalScope字段的值。
        Specified by:
        getBindings接口 ScriptContext
        参数
        scope - 指定的范围
        结果
        engineScopeglobalScope字段的值。
        异常
        IllegalArgumentException - 如果范围的值无效。