我是靠谱客的博主 复杂小馒头,最近开发中收集的这篇文章主要介绍struts_OGNL1. OGNL简介2. OGNL简单使用3. OGNL的功能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. OGNL简介

  • 全称:Object Graphic Navigation Language(对象图导航语言)、
  • 是struts默认的表达式语言
  • 使用OGNL表达式,必须使用struts标签库
  • 相当于JSP的EL表达式,都是从作用域中取值

2. OGNL简单使用

  • <s:property>将其属性value的值直接输出到页面
  • jsp设置属性表达式:【<jsp:setProperty property="" name=""/>】    
  • value的值就是一个OGNL表达式,它不是一个字符串    
  • 若value的值为字符串输出,将其值加单引号即可
  • 使用前需要在jsp页面导入struts标签库
    <%--
        输出字符串 'OGNL表达式'
    --%>
    <s:property value="'OGNL表达式'"></s:property>
    <%--单引号里面是字符串
        双引号里面是表达式
        输出字符串 'OGNL表达式'的长度 7
    --%>
    <s:property value="'OGNL表达式'.length()"></s:property>

3. OGNL的功能

  • 访问对象方法
    • 比如输出字符串长度,字符串.length()
  • 访问静态属性
  • 访问静态方法
<%--单引号里面是字符串
        双引号里面是表达式
        输出字符串 'OGNL表达式'的长度 7
    --%>
    <s:property value="'OGNL表达式'.length()"></s:property><br>

    <%--
      访问静态属性(默认情况下,struts2把静态属性的访问权限关闭)
      解决办法:
          在struts.xml增加常量
          修改struts-core.jar的default.properties中的struts.ognl.allowStaticMethodAccess
          令其值为true
      示例:
      输出Integer.MAX_VALUE(整数的最大值,是一个静态属性)
    --%>
    max value of int:<s:property value="@java.lang.Integer@MAX_VALUE"></s:property><br>
    <%--
       访问静态方法
       示例:
        访问Math类的random()获取随机数
    --%>
    a random number:<s:property value="@java.lang.Math@random()"></s:property><b

 struts.xml中添加常量:

<!--配置struts2打开访问静态属性权限-->
<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>

  • 封装List数据

 

<%--
        封装List
  --%>
<s:radio list="{'男','女'}" name="gender1" label="性别"></s:radio><br>

 

  • 封装Map
<%--
        封装Map
--%>
<s:radio list="#{'男':'male','女':'female'}" name="gender2" label="性别"></s:radio><br>

 

最后

以上就是复杂小馒头为你收集整理的struts_OGNL1. OGNL简介2. OGNL简单使用3. OGNL的功能的全部内容,希望文章能够帮你解决struts_OGNL1. OGNL简介2. OGNL简单使用3. OGNL的功能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部