Struts 태그 라이브러리의 OGNL
14275 단어 Ognl
Person person = new Person();
person.setName("zhangsan");
Dog dog = new Dog();
dog.setName("wang");
OgnlContext context = new OgnlContext();
context.put("person", person);
context.put("dog", dog);
context.setRoot(person); //
Object obj = Ognl.parseExpression("name");
Object obj1 = Ognl.getValue(obj, context, context.getRoot());
System.out.println(obj1);
System.out.println("-----------------");
Object obj2 = Ognl.parseExpression("#person.name");
Object obj3 = Ognl.getValue(obj2, context, context.getRoot());
System.out.println(obj3);
System.out.println("-----------------");
Object obj4 = Ognl.parseExpression("#dog.name");
Object obj5 = Ognl.getValue(obj4, context, context.getRoot());
System.out.println(obj5);
System.out.println("-----------------");
Object obj6 = Ognl.parseExpression("#dog.name.toUpperCase()"); //
Object obj7 = Ognl.getValue(obj6, context, context.getRoot());
System.out.println(obj7);
System.out.println("-----------------");
Object obj8 = Ognl.parseExpression("@java.lang.Integer@toBinaryString(10)");
Object obj9 = Ognl.getValue(obj8, context, context.getRoot());
System.out.println(obj9);
System.out.println("-----------------");
Object obj10 = Ognl.getValue("@@max(4,8)", context, context.getRoot());
System.out.println(obj10);
System.out.println("-----------------");
Object obj11 = Ognl.getValue("new java.util.LinkedList()", context, context.getRoot());
System.out.println(obj11);
System.out.println("-----------------"); //
Object obj12 = Ognl.getValue("{'aa','bb','cc'}[1]", context,context.getRoot());
System.out.println(obj12);
System.out.println("-----------------");//
Object obj13 = Ognl.getValue("new java.lang.String[]{'aa','bb','cc'}[2]", context, context.getRoot());
System.out.println(obj13);
ArrayList<String> list = new ArrayList<String>();
list.add("hello");
list.add("world");
list.add("chm");
context.put("list", list);
System.out.println("-----------------");
Object obj14 = Ognl.getValue("#list[1]",context, context.getRoot());
System.out.println(obj14);
System.out.println("-----------------");// (map)
Object obj15 = Ognl.getValue("#{'key1':'value1','key2':'value2','key3':'value3'}['key2']", context , context.getRoot());
System.out.println(obj15);
System.out.println("-----------------");
ArrayList<Person> persons = new ArrayList<Person>();
Person p1 = new Person();
Person p2 = new Person();
Person p3 = new Person();
p1.setName("zhangsan");
p2.setName("lisi");
p3.setName("wangwu");
persons.add(p1);
persons.add(p2);
persons.add(p3);
context.put("persons", persons);
// (filtering)
Object obj16 = Ognl.getValue("#persons.{? #this.name.length() > 4}[0].name", context, context.getRoot());
System.out.println(obj16);
//
Object obj17 = Ognl.getValue("#persons.{^ #this.name.length() > 4}[0].name", context, context.getRoot());
System.out.println(obj17);
//
Object obj18 = Ognl.getValue("#persons.{$ #this.name.length() > 4}[0].name", context, context.getRoot());
System.out.println(obj18);
// (projection)
Object obj19 = Ognl.getValue("#persons.{name}", context, context.getRoot());
System.out.println(obj19);
System.out.println("-----------------");
Object obj20 = Ognl.getValue("#persons.{#this.name.length()>4?'hello':#this.name}", context, context.getRoot());
System.out.println(obj20);
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
ognl 전단 그룹이 비어 있는지 판단오늘 전에 썼던 프로그램을 다시 한 번 살펴봤습니다. 앞에 struts2 라벨로 보일 때 비공과 그룹 크기를 잘 판단하셔야 돼요....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.