SpEL代码
来源:互联网 发布:自学数学软件 编辑:程序博客网 时间:2024/04/29 19:48
public class SpEL { public static void main(String[] args) {ExpressionParser parser=new SpelExpressionParser();EvaluationContext ctx=new StandardEvaluationContext();List<String> list=new ArrayList<String>();list.add("java");//list.add("java3");list.add("java2");list.add("java1");ctx.setVariable("mylist", list);List<Integer> list1 = new ArrayList<Integer>();list1.addAll(Arrays.asList(2, 3, 4, 5, 6, 7, 9));ctx.setVariable("list", list1);parser.parseExpression("#mylist[1]='123'").getValue(ctx);System.out.println(parser.parseExpression("#mylist.size()>3?'大于3':'小于或等于3'").getValue(ctx));//System.out.println(parser.parseExpression("#mylist[1]").getValue(ctx));//System.out.println(parser.parseExpression("T(java.lang.Math).random()").getValue(ctx));System.out.println(parser.parseExpression("T(System).getProperty('os.name')").getValue(ctx));//System.out.println(System.getProperty("os.name"));// 7 //System.out.println(parser.parseExpression("new javax.swing.JFrame('测试').setVisible('true')").getValue());//8.变量 #root #this +集合选择 System.out.println(parser.parseExpression( "#list.?[#this >5]").getValue(ctx)); //[6,7,9]//9.自定义函数//System.out.println(parser.parseExpression("new javax.swing.JFrame('测试').setVisible('true')").getValue()); //表达式模板 Person p=new Person ("aa",1,183); Person p1=new Person ("aa11",2,173); System.out.println(parser.parseExpression("我的名字是#{name},年龄是#{age},身高是#{h}",new TemplateParserContext()).getValue(p)); System.out.println(parser.parseExpression("我的名字是#{name},年龄是#{age},身高是#{h}",new TemplateParserContext()).getValue(p1)); } /* 小于或等于3 Windows XP [6, 7, 9] 我的名字是aa,年龄是1,身高是183 我的名字是aa11,年龄是2,身高是173*/}
person.java
package qust.fang.chao.spEl;public class Person {String name;public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public int getH() {return h;}public void setH(int h) {this.h = h;}int age;int h;public Person(String name, int age, int h) {super();this.name = name;this.age = age;this.h = h;} }
0 0
- SpEL代码
- Spring SpEL系列二 @Value,xml, Java代码使用SpEL
- SpEL
- spring SpEL
- spring SpEL
- SpEL语法
- Spring --- SpEL
- 1012---SpEL
- Spring SpEL
- SpEL(1)
- SpEL(2)
- SpEL(3)
- spel表达式
- SpEL笔记
- Spring - SpEL
- SpEL语法
- Spring-SpEL
- SpEL表达式
- 笔试题总结
- C#中抽象类和接口的区别
- 各种UML类图标识法
- Canvas
- 驱动程序的加载方式
- SpEL代码
- warshall算法
- 最全的iOS面试题及答案
- NGUI官网示例6 – Draggable Window讲解
- APS.NET CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET...”--“拒绝访问。
- Android之BroadcastReceiver基础学习
- 第六周作业2——哈夫曼编码实现
- 3分钟学会linux文件链接
- 编写可加载模块