OGNL入门】的更多相关文章

------------------siwuxie095 OGNL 入门 1.OGNL 支持对象方法调用,即 objName.methodName() 如:使用 OGNL 表达式 + Struts2 标签计算字符串长度 2.具体步骤 (1)在 JSP 页面引入 Struts2 标签库 (2)在 Struts2 标签中使用 OGNL 表达式实现操作 3.具体实现 (1)编写页面 ognl.jsp: <%@ page language="java" contentType="…
转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html 下面我们在com.asm.vo.User类中增加一个字段private Address addres;,并提供此字段的get/set方法,随后再在login.jsp中增加如下代码: 城  市:<input type="text" name="user.addres.city"><br> 然后再在loginSuc.jsp中…
1.值栈入门 下面我们建立struts2ognl项目来练习ognl的使用. 步骤一.搭建strust2的开发环境 步骤二.建立LoginAction,主要代码如下: package com.asm; public class LoginAction extends ActionSupport{ private User user; public String execute() throws Exception { return SUCCESS; } ...省略user的get/set方法 }…
一.OGNL概述 1.1 什么是OGNL OGNL的全称是对象图导航语言( object-graph Navigation Language),它是一种功能强大的开源表达式语言,使用这种表达式语言,可以通过某种表达式语法,存取Java对象的任意属性,调用Java对象的方法,同时能够自动实现必要的类型转换.如果把表达式看作是一个带有语义的字符串,那么OGNL无疑成为了这个语义字符串与Java对象之间沟通的桥梁. 1.2 OGNL的作用 Struts2默认的表达式语言就是OGNL,它具有以下特点:…
一.OGNL表达式 1.概述 1.1什么是OGNL ​ OGNL是Object-Graph Navigation Language的缩写,俗称对象图导航语言. 它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能. ​ Eg: hibernate 查询方式 : 对象导航查询. ​ 其实就是查询出来了一个对象之后,通过对象里面的getXXX() 来获取关联的对象. ​ 它是一个开源项目,并不是struts发明…
Struts2_day03 上节内容 今天内容 OGNL概述 OGNL入门案例 什么是值栈 获取值栈对象 值栈内部结构 向值栈放数据 向值栈放对象 向值栈放list集合 从值栈获取数据 获取字符串 获取对象 获取list集合 其他操作 EL表达式获取值栈数据(为什么) OGNL的#.%使用 #使用 %使用 案例-列表功能改造(值栈) Struts2_day03 上节内容 1 在action获取表单提交数据 (1)使用ActionContext类获取 (2)使用ServletActionConte…
一.OGNL入门 1.什么是OGNL OGNL的全称是对象图导航语言(Object-Graph Navigation Language),它是一种功能强大的开源表达式语言.使用这种表达式语言,可以通过使用某种表达式语言,来存取Java对象的任意属性,调用Java的方法,同时能够自动实现必要的数据类型转换, 2.OGNL的作用 Struts2默认的表达式语言就是ognl表达式语言,该语句具有以下的特点 支持对象方法的调用.例如:objectName.methodName(). 支持静态方法调用和值…
目录 OGNL 什么是OGNL OGNL与EL表达式对比 OGNL功能 OGNL使用要素 OGNL入门 java程序使用ognl struts2中使用ONGL OGNL 什么是OGNL OGNL是Object-Graph Navigation Language的缩写, 它是一种功能强大的表达式语言,通过它简单一致的表达式语法, 可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能. OGNL与EL表达式对比 ​ OGNL对象图导航语言,比EL表达式强大很多倍的语言…
一.准备工作及实例 1.解压struts-2.1.6-all.zip(structs网上下载) apps目录:struts2自带的例子程序 docs目录:官方文档. lib 目录:存放所有jar文件. Src 目录:源文件存放地 2.六个基本包 struts2-core-2.1.6.jar :开发的核心类库 freemarker-2.3.13.jar :struts2的UI标签的模板使用freemarker编写 commons-logging-1.0.4.jar :日志包 ognl-2.6.11…
上篇文章我们了解了怎么配置struts.xml文件,以及前端控制器配置怎么配置,,Action进阶,Result结果配置,Struts2中的Servlet的API的访问,以及怎么获得请求参数.今天我们在深入讲解一下OGNL表达式,OGNL中的符号,和常用的拦截器,标签库 一,OGNL表达式 1.概述 1.1什么是OGNL ​ OGNL是Object-Graph Navigation Language的缩写,俗称对象图导航语言. 它是一种功能强大的表达式语言,通过它简单一致的表达式语法,可以存取对…
一.OGNL(Object-Groph Navigation Language) 是一种强大的表达式语言,可以存取对象的任意属性,调用对象的方法,遍历整个对象的结构图,实现字段类型转化等功能. 1)与EL表达式对比: OGNL对象图导航语言,比EL表达语言更强大:EL只能从域中获取数据,OGNL可以存取数据,可以调用对象的方法,获取struts的值栈的数据. 是第三方的表达式语言(但struts中自带OGNLjar包) 2)OGNL功能: 1.支持运算符(+-*/) 2.支持对象的方法调用,如x…
day03 上传下载 1        上传下载组件介绍 l  jspSmartUpload(model1的年代): l  apache-commons-fileupload,Struts2默认上传组件: l  Servlet3.0使用的Part,但Servlet3.0还没有普及: l  COS,Struts2支持,不过已经停止更新很久了: l  pell,Struts2支持. 2        fileUpload的拦截器 Struts2默认使用的是commons-fileUpload组件完成…
一.上节回顾 1 在action获取表单提交数据 (1)使用ActionContext类获取 (2)使用ServletActionContext类获取 (3)接口注入 2 结果配置 (1)全局结果页面和局部结果页面 (2)result标签type属性 - type属性值: -- 默认值是dispatcher做转发 -- redirect做重定向 -- chain转发到action -- redirectAction重定向到action 3 struts2提供获取表单数据方式 (1)属性封装 (2…
大致内容: ognl概述 ognl入门 值栈 一.OGNL概述 OGNL,全称为Object-Graph Navigation Language,对象图导航语言 它是一个功能强大的表达式语言,用来获取和设置Java对象的属性, 它旨在提供一个更高的更抽象的层次来对Java对象图进行导航. struts2自带的表达式语言就是OGNL >支持对象方法调用 >支持类静态方法调用和值访问 >[主要用法]在struts2中操作值栈 和struts2标签一起使用来操作值栈 OGNL不是struts2…
接收参数 当发送一个请求时,除了使用RequestApi来接收参数之外,Struts2内部提供了3种接收参数的方式 接收参数的方式 1. 提供属性set方法的方式 在Action当中提供对应属性的set方法,会自动接收参数,并且会自动做类型转换 使用方式 index.jsp <form action="${pageContext.request.contextPath }/myform.action" method="get"> 用户名:<inpu…
1 ognl概述 2 ognl入门案例 3 什么是值栈 (1)servlet和action区别 (2)值栈存储位置 4 如何获取值栈对象 5 值栈内部结构 6 向值栈放数据 (1)s:debug标签 (2)向值栈放字符串 (3)向值栈放对象 (4)向值栈放list集合 7 从值栈获取数据 (1)从值栈获取字符串 (2)从值栈获取对象 (3)从值栈获取list集合 OGNL的作用 Struts2默认的表达式语言就是OGNL,它具有以下特点: ①支持对象方法调用.例如:objName.methodN…
一.OGNL入门 1.简介     OGNL的全称是对象图导航语言(Object-Graph Navigation Language),它是一种功能强大的开源表达式语言,使用这种表达式语言,可以通过某种表达式语法,存取Java对象的任意属性,调用Java对象的方法,同时能够自动实现必要的类型转换.如果把表达式看作是一个带有语义的字符串,那么OGNL无疑成为了这个语义字符串与Java对象之间沟通的桥梁.在struts2中,ognl表达式就是默认的表达式语言. 2.使用要求     (1)导入标签库…
一.准备工作及实例 1.解压struts-2.1.6-all.zip apps目录:struts2自带的例子程序docs目录:官方文档. lib 目录:存放所有jar文件. Src 目录:源文件存放地 2.六个基本包 struts2-core-2.1.6.jar :开发的核心类库freemarker-2.3.13.jar :struts2的UI标签的模板使用freemarker编写commons-logging-1.0.4.jar :日志包ognl-2.6.11.jar :对象图导航语言,通过它…
Result配置详解 说明:在前面的许多案例中我们所用到的Action基本都继承自ActionSupport这个类,而在这个类中我们定义了五个字段:SUCCESS,NONE,ERROR,INPUT,LOGING.我们可以直接返回这些字段值,这些字段值实质是被定义成:String SUCCESS=”success”这样的形式,所以我们只要在Result元素中用它们的小写即可. <result>标准完整形式如下: <result name="success" type=&…
一.前言 OGNL和标签库的作用,粗暴一点说,就是减少在JSP页面中出现java代码,利于维护. 1.1.OGNL 1.1.1.什么是OGNL? OGNL(Object-Graph Navigation Language):对象图形导航语言,是一种功能强大的表达式语言,通过简单的语法,就能够任意存取对象的属性或者调用对象的方法,能够遍历整个对象的结构图,实现对象属性的类型转换功能. 1.1.2.OGNL的基本知识 1.OGNL表达式的计算是围绕OGNL上下文进行的 OGNL上下文实际上就是一个M…
一.OGNL表达式语言 OGNL是Object Graphic Navigation Language(对象图导航语言)的缩写,它是一个开源项目. Struts 2框架使用OGNL作为默认的表达式语言.   相对EL表达式,它提供了平时我们需要的一些功能,如: ①支持对象方法调用,如xxx.sayHello(): ②支持类静态方法调用和值访问,表达式的格式为@[类全名(包括包路径)]@[方法名 |  值名],例如:@java.lang.String@format('foo %s', 'bar')…
什么是OGNL表达式 Object-Graph Navigation Language的缩写. 可以遍历整个对象结构图,实现对象类型转换等功能的表达式. OGNL实际上是个Map集合,有一个上下文根对象. ActionContext作为OGNL上下文,并把ValueStack作为根对象. ValueStack 可以执行,增加,删除,查询. struts2会把Action放到栈顶. OGNL中的几个家伙 # 访问非根对象属性 #session.msg 相当于 ActionContext.getCo…
一.OGNL常用符号(接上一篇文章): 1.#号 1)<s:property value="#request.username"/> 作用于struts2的域对象,而不是普通域对象 2)<s:property value="#user.username"/>作用于JavaBean对象 3)<s:property value="#username"/>作用于普通字符串,如果value只是一个字符串的话,不是Jav…
一.知识点学习 1.struts2中包含以下6种对象,requestMap,sessionMap,applicationMap,paramtersMap,attr,valueStack; 1)requestMap用来存放包含当前HttpServletRequest的属性(attribute)的Map,简单来说就是request域中的值; 2)sessionMap用来存放包含当前HttpSession的属性(attribute)的Map 3)applicationMap用来存放包含当前应用的Ser…
一.知识点回顾 防止表单重复提交核心思想: 客户端和服务器端和写一个token,比较两个token的值相同,则非重复提交;不同,则是重复提交. 1.getSession三种方式比较: request.getSession() request.getSession(true);//无论如何都要得到新的Session request.getSession(false);//只能得到旧有的Session 2.>>struts2框架提供了token拦截器,主要用于防止表单重复提交 >>默认…
转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html 下面我们建立struts2ognl项目来练习ognl的使用. 步骤一.搭建strust2的开发环境 步骤二.建立LoginAction,主要代码如下: package com.asm; public class LoginAction extends ActionSupport{ private User user; public String execute() thro…
一 配置核心过滤器…
(第4章):MyBatis动态SQL[foreach.bind.OGNL用法] 4.4 foreach 用法 SQL 语句中有时会使用 IN 关键字,例如 id in (1,2,3).可以使用 ${ids}方式直接获取值,但这种写法不能防止 SQL 注入,想避免 SQL 注入就需要用#{}的方式,这时就要配合使用 foreach 标签来满足需求. foreach 可以对数组.Map 或实现了 Iterable 接口(如 List.Set)的对象进行遍历.数组在处理时会转换为 List 对象,因此…
package com.scorpion.ognl; import java.util.ArrayList; import java.util.List; import ognl.Ognl; import ognl.OgnlContext; import ognl.OgnlException; public class OgnlTest { /** * * Ognl实现了map接口 * * @param args * @throws OgnlException */ public static…
一.访问对象的方法…