`
jiaoronggui
  • 浏览: 1327806 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
博客专栏
B7c2eb31-a8ea-3973-a517-d00141f39b89
项目管理软件-redmin...
浏览量:116414
4a63e153-250f-30f6-a051-97cfc67cb3d3
IT职业规划
浏览量:199304
社区版块
存档分类
最新评论

JSEL2.0官网提供的用例,竟然运行不通过

    博客分类:
  • Java
J# 
阅读更多
import java.util.HashMap;
import org.xidea.el.Expression;
import org.xidea.el.ExpressionFactory;

public class JSELTest {
    private ExpressionFactory factory = ExpressionFactory.getInstance();

    /**
     * 表达式函数(与对象绑定时,可以不申明为 static)
     */
    public int testAdd(int i,int j){
        return i+j;
    }
    public void testExpression(){
        Expression el = factory.create("12 * 60 + 100");
        Object result1 = el.evaluate();
        System.out.println("result1");
        System.out.println(result1);
    }
    public void testMapContext(){
        Expression el = factory.create("var1 +2 * var2 + obj.testAdd(1,2)");

        Object result21 = el.evaluate("var1",123,
                                      "var2",456,
                                      "obj",this);
        System.out.println("result21:");
        System.out.println(result21);
      
        //通过方式传递变量
        HashMap<String, Object> context = new HashMap<String, Object>();
        context.put("var1",111);
        context.put("var2",222);
        context.put("obj",this); //设置对象

        Object result22 = el.evaluate(context);
        System.out.println("result22:");
        System.out.println(result22);
    }
    public void testFunction(){
        Expression el = factory.create("100 + testAdd(1,2)");
        Object result3 = el.evaluate(this);
        System.out.println("result3");
        System.out.println(result3);
    }
    public static void main(String[] args){
        JSELTest test = new JSELTest();
        test.testExpression();
        test.testMapContext();
        test.testFunction();
    }
}



运行结果:
result1
820
result21:
var1NaNnull
result22:
558
result3
103

这段代码好像运行有问题
        Object result21 = el.evaluate("var1",123,
                                      "var2",456,
                                      "obj",this);
        System.out.println("result21:");
        System.out.println(result21);

不知道是环境错了,还是官网WIKI提供的代码有问题,学习中。。。。
0
0
分享到:
评论

相关推荐

    导航系统2.0测试用例导航系统2.0测试用例

    导航系统2.0测试用例 一、 导航系统2.0测试用例介绍 导航系统2.0测试用例是青岛华烁高科新能源技术有限公司开发的测试参考资料,旨在测试导航系统2.0的各种功能和性能。该测试用例分为快速测试和功能测试两部分,...

    python中pytest收集用例规则与运行指定用例详解

    我们又有哪些方式来运行单个用例或者批量运行用例呢?下面将为大家一一解答! pytest收集用例原理分析 首先我们按照如下目录结构新建我们的项目 [pyttest搜索测试用例的规则] |[测试用例目录1] | |__init__.py | |...

    陈庆春:用例2.0,敏捷在行动

    UseCase一直是一种针对业务和系统需求都有效的工作方式。在google上搜索“usecase”的结果是搜索“UserStory”的结果的六倍,但软件开发不是靠名望来驱动的。反之,我们应该使用最有效的工作方式,一种允许我们持续...

    倍福EL1259教程及用例程序.zip

    本教程旨在帮助用户深入理解和熟练运用EL1259模块,通过提供的用例程序,可以更直观地了解其功能和使用方法。 **EL1259模块详解** EL1259是一款四通道、24位分辨率的模拟量输入模块,支持±10V的电压输入范围。每...

    SUPL2.0测试用例第一版

    官网下载资料链接 https://www.openmobilealliance.org/release/SUPL/V3_0-20181213-C/

    jQuery-min-2.0 官方压缩版.rar

    至少目前2.0的主要用例,对IE的支持是不再考虑范围内了,而是Chrome或者Firefox的附加组件,PhoneGap 应用程序或是node.jsjQuery 团队在官博中再次提醒用户,jQuery 2.0 不再支持IE 6/7/8 了,但是 jQuery 1.9 会...

    《编写有效用例》,《用例》

    作者通过对用例的深入分析,提供了众多实用的案例和练习,帮助读者掌握用例编写的技巧。 用例是软件开发过程中一个重要的概念,它描述了系统的功能和用户如何与这些功能交互。用例不仅能够帮助设计师理解需求,还能...

    编写有效用例.pdf

    编写有效用例需要了解用例的结构、范围、项目相关人员和执行者,以及如何通过层次化的方法表达系统的行为。 首先,用例是规范行为的契约。它基于执行者的目标,即用户或其他系统希望系统完成的功能。一个用例可以...

    软件工程 用例模版用例模版用例模版

    在软件工程领域,用例模板是一种重要的文档工具,它用于详细描述系统或软件的功能需求,以便于开发人员、测试人员和利益相关者之间进行清晰、一致的沟通。用例模板通常包括多个部分,以确保全面地捕捉到系统的行为和...

    湛江智慧工地综合监管平台测试用例、报告V2.0.docx

    【智慧工地综合监管平台测试用例、报告V2.0】文档主要涵盖了系统测试的相关内容,特别是针对“湛江智慧工地综合监管平台”的测试用例和总结。以下是对这些知识点的详细说明: 1. **视频录像功能**:系统的核心功能...

    用例模板:”提交订单“用例文档示例.docx

    《用例模板:“提交订单”用例文档详解》 在软件开发过程中,用例建模是一种重要的需求分析方法,它通过描绘系统与用户之间的交互来明确功能需求。用例文档,作为用例建模的核心部分,详尽地记录了用户与系统间的...

    测试用例实例(含:功能测试用例、性能测试用例、兼容性测试用例)

    ### 测试用例实例知识点详解 #### 一、功能测试用例 **定义与目标:** 功能测试是一种软件测试类型,旨在验证软件的功能性需求是否按照预期的方式运作。功能测试通常涉及验证系统的输入、处理逻辑及输出是否符合...

    软件测试用例范文

    本文将对软件测试用例进行详细的解释,并提供实用的测试用例设计和实施方法。 一、测试用例设计 测试用例设计是软件测试的第一步,它的目的是定义测试的范围和深度。测试用例设计的目的是为了确定软件的功能和性能...

    华为android系统测试用例

    综上所述,“华为Android系统测试用例”涵盖了从系统功能到用户体验的广泛测试领域,通过严谨的测试用例设计和执行,确保了华为手机Android系统的高品质和稳定性。这些知识对于任何涉及Android系统开发和测试的专业...

    测试用例内有三个测试用例相关文件

    本压缩包包含三个与测试用例相关的文件,分别以Word和Excel格式提供模板,旨在帮助用户更好地理解和编写测试用例。 1. **测试用例模板.doc**:这是一个Word文档,通常包含了测试用例的基本结构和要素。测试用例模板...

    用例命名规范.docx

    例如,一个完整的用例文件名可能是“PUP-用例-UC01001 投保单录入(公共)_V0.1”,其中“PUP”是公司名英文缩写,“用例”是文件类型,“UC01001”是用例编号,“投保单录入(公共)”是用例名称,“_V0.1”是版本...

    开放充电协议标准2.0 OCPP 2.0

    开放充电协议 (OCPP) 是一个全球开放性的通讯标准,主要用于解决私营的充电网络间通讯产生的各种困难。OCPP支持充电站点与各供应商中央管理系统间的无缝通讯管理。在过去的很多年内,私营充电网络的封闭特性已经给...

    web系统测试用例

    Web 系统测试用例模板 Web 系统测试用例模板是指用于测试 Web 系统的测试用例文档,旨在确保 Web 系统的正确性、可靠性和性能。...通过使用测试用例模板,可以提高测试效率,减少测试时间和成本。

    功能用例编写程序

    在提供的文件列表中,`PCase.exe`很可能是一个可执行文件,它是"功能用例编写程序"的客户端应用,用户可以通过这个程序界面进行用例的创建、编辑和执行。而`db.rar`则可能包含了数据库脚本或者数据库备份文件,用于...

Global site tag (gtag.js) - Google Analytics