b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

ognl表达式_ognl apache_ognl表达式是什么(5)

电脑杂谈  发布时间:2017-02-12 23:05:53  来源:网络整理

说明:

1.这里this表示当前对象,因为users是一个集合,于是会进行一个循环,循环到哪个对象,this就表示哪个对象。

2.投影中只有上面三种方式:?#、^#、$#。第22表示判断哪个user对象的age为1,如果不加后面的[0],则打印出对象,同时对象加了中括号,如[user1],这就表示是一个集合,因为可能有多个对象的age复合条件。

3.^#表示第一个age符合条件的对象。ognl表达式$#表示最后一个age符合条件的对象。

ognl.jsp

<li>26.[]:<s:property value="[0].username"/></li>

说明:

1.当我们使用value="[0]"访问时会打印出值栈中从上到下的所有对象。如

26.[]:[com.bjsxt.struts2.ognl.OgnlAction@1360826f, com.opensymphony.xwork2.DefaultTextProvider@5c053d81]

2.当我们使用value="[0].username"访问时则会在action中找username这个属性,当在第一个action中找不到我们想要的属性时会到第二个action中去找,而一般我们什么时候值栈中才会有多个action呢?

ognl.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
    "http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
    <package name="ognl" extends="struts-default">
        <action name="ognl" class="com.bjsxt.struts2.ognl.OgnlAction">
            <result>/ognl.jsp</result>
        </action>
        <action name="test" class="com.bjsxt.struts2.ognl.TestAction">
            <result type="chain">ognl</result>
        </action>
    </package>

</struts>

可以看到当result的类型type="chain"时会出现多个action。此时我们使用地址::8080/Struts2_1900_OGNL/tesst.action进行访问,这时我们就可以在值栈中看到两个action。

最后我们给出struts.xml:


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-32069-5.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...