Strut 2 ValueStack传送带机制】的更多相关文章

源码与jar包下载(将rar改成jar,直接放在WEB_INF\lib目录中即可)    众所周知,Strut 2的Action类通过属性可以获得所有相关的值,如请求参数.Action配置参数.向其他Action传递属性值(通过chain结果)等等.要获得这些参数值,我们要做的唯一一件事就是在Action类中声明与参数同名的属性,在Struts 2调用Action类的Action方法(默认是execute方法)之前,就会为相应的Action属性赋值.     要完成这个功能,有很大程度上,Str…
要了解Struts2与OGNL表达式的关系,我们必须先搞清楚以下三个概念: 1.  ActionContext它是Action运行的上下文环境,Action的多项设置都存放在次,我们每一次Action调用都会创建一个ActionContext.通常情况下我们可以通过静态方法getContext()来获得Action上下文,进而进行其它操作,比如说可以得到request.session.application. 2.  ValueStack此对象主要是由OGNL框架实现,具体的实现类是com.op…
1. 数据传输背后机制:ValueStack(值栈) 在这一切的背后,是因为有了ValueStack(值栈)! 2. ValueStack基础:OGNL 要了解ValueStack,必须先理解OGNL(Object Graphic Navigatino Language)! OGNL是Struts2中使用的一种表达式语言,它可以: ①用于JSP的标签库中,以便能够方便的访问各种对象的属性: ②用于界面将参数传递到Action(并进行类型转换)中: ③用于struts2的配置文件中! 所以,非常有…
1.     数据传输背后机制:ValueStack(值栈) 在这一切的背后,是因为有了ValueStack(值栈)! ValueStack基础:OGNL要了解ValueStack,必须先理解OGNL(Object Graphic Navigatino Language)! OGNL是Struts2中使用的一种表达式语言,它可以用于JSP的标签库中,以便能够方便的访问各种对象的属性:它用于界面将参数传递到Action(并进行类型转换)中:它还可以用于struts2的配置文件中!所以,非常有必要理…
1.     数据传输背后机制:ValueStack(值栈) 在这一切的背后,是因为有了ValueStack(值栈)! ValueStack基础:OGNL 要了解ValueStack,必须先理解OGNL(Object Graphic Navigatino Language)! OGNL是Struts2中使用的一种表达式语言,它可以用于JSP的标签库中,以便能够方便的访问各种对象的属性:它用于界面将参数传递到Action(并进行类型转换)中:它还可以用于struts2的配置文件中!所以,非常有必要…
ValueStack基础:OGNL(Object Graphic Navigatino Language) OGNL是Struts2中使用的一种表达式语言. 它可以用于,在JSP页面,使用标签方便的访问各种对象的属性: 它可以用于,在Action中获取传递过来的页面中的参数(并进行类型转换): 它还可以用在struts2的配置文件中! 所以,非常有必要理解OGNL的基本机制. Root对象 OGNL称为对象图导航语言. 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联的其它对…
ValueStack基础:OGNL(Object Graphic Navigation Language) OGNL是Struts2中使用的一种表达式语言.它可以用于:   · 在JSP页面,使用标签方便的访问各种对象的属性:   · 在Action中获取传递过来的页面中的参数(并进行类型转换):   · 可以用在struts2的配置文件中! 所以,非常有必要理解OGNL的基本机制. Root对象 OGNL称为对象图导航语言. 所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对象关联…
PS:由于感冒原因,本篇写的有点没有主干,大家凑合看吧.. 学习内容: 1.MessageQueue,Looper,MessageQueue的作用. 2.子线程向主线程中发送消息 3.主线程向子线程中发送消息     异步消息处理机制是Android提供给我们异步更新UI的一种很好的方式,线程之间以Handler作为桥梁,使得Message可以在线程间进行传递,从而实现异步的一种方式. 1.MessageQueue   MessageQueue顾名思义,指的就是消息队列,说这个之前我们首先需要知…
一.struts2系统验证 1.基于struts2系统验证的方式实际上就是通过配置xml文件的方式达到验证的目的. 2.实际上系统校验的方法和手工校验的方法在底层的基本实现是相同的.但是使用系统校验的时候对实现过程进行了封装,用起来比较方便. 3.实现过程 (1)在Action文件中定义好相关属性,属性名字和表单中的name属性值要相同. (2)在Action同目录下新建一个XML文件,文件命名规则如下 * 如果是针对整个Action文件的,则文件名为:ActionClassName-valid…
三者之间的关系如下图所示: ActionContext  一次Action调用都会创建一个ActionContext  调用:ActionContext context = ActionContext.getContext() ValueStack 由OGNL框架实现  可以把它简单的看作一个List Stack Object:放入stack中的对象,一般是action. Stack Context(map):stack上下文,它包含一些列对象,包括request/session/attr/ap…
所谓ModelDriven,意思是直接把实体类当成页面数据的收集对象.比如,有实体类User如下: package cn.com.leadfar.struts2.actions; public class User { private int id; private String username; private String password; private int age; private String address; public String getUsername() { ret…
  2013-03-15 10:54 1722人阅读 评论(1) 收藏 举报  分类: J2EE 版权声明:本文为博主原创文章,未经博主允许不得转载. 三者之间的关系如下图所示: ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionContext.getContext() ValueStack 由OGNL框架实现 可以把它简单的看作一个List  Stack Object:放入stack中的对象…
在struts.xml 中使用ognl有两种方面的需求: 1. 在action执行时从struts.xml中读取param标签中的值,然后调用标签name属性相应的set方法对action中的变量赋值. 2. 在action执行完execute(或其他方法)后,struts.xml通过param变量读取action中或其他对象(例如request,session等)的属性值并执行一些计算. 在这两种情况先如果使用ognl表达式应该如何使用: 1. 在struts.xml 的action标签下可以…
odelDriven 为什么需要ModelDriven 所谓ModelDriven,意思是直接把实体类当成页面数据的收集对象.比如,有实体类User如下: package cn.com.leadfar.struts2.actions; public class User { private int id; private String username; private String password; private int age; private String address; publi…
一,首先给出三者的定义 1.valueStack: 里面存放的是Action类中通过set方法设置的属性值(表单传过来的值等),由OGNL框架实现; 2.stackContext: 也是用来存值的,stack上下文,它包含一些列对象,包括request/session/attr/application map等.  3.actionContext: 是action的上下文,可以得到request,session,application等. 我们在JSP页面中访问value stack的内容时,是…
1.通知链表简介 大多数内核子系统都是相互独立的,因此某个子系统可能对其它子系统产生的事件感兴趣.为了满足这个需求,也即是让某个子系统在发生某个事件时通知其它的子系统,Linux内核提供了通知链的机制.通知链表只能够在内核的子系统之间使用,而不能够在内核与用户空间之间进行事件的通知.    通知链表是一个函数链表,链表上的每一个节点都注册了一个函数.当某个事情发生时,链表上所有节点对应的函数就会被执行.所以对于通知链表来说有一个通知方与一个接收方.在通知这个事件时所运行的函数由被通知方决定,实际…
者之间的关系如下图所示: relation ActionContext 一次Action调用都会创建一个ActionContext 调用:ActionContext context = ActionContext.getContext() ValueStack 由OGNL框架实现 可以把它简单的看作一个List Stack Object:放入stack中的对象,一般是action. Stack Context(map):stack上下文,它包含一些列对象,包括request/session/at…
所谓ModelDriven,意思是直接把实体类当成页面数据的收集对象.比如,有实体类User如下: package cn.com.leadfar.struts2.actions; public class User { private int id; private String username; private String password; private int age; private String address; public String getUsername() { ret…
Java虚拟机(Java Virtual Machine) 简称JVM Java虚拟机是一个想象中的机器,在实际的计算机上通过软件模拟来实现.Java虚拟机有自己想象中的硬件,如处理器.堆栈.寄存器等,还具有相应的指令系统. Java把内存划分成两种:一种是栈内存,一种是堆内存. 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分配内存空间,当超过变量的作用域后,Java会自动释放掉为该变量所分配的内存空间,该内存…
更多文档:http://pan.baidu.com/s/1sjzzlDF linux poll/select用法及在字符驱动中的简单实现 1.poll和select 使用非阻塞I/O 的应用程序常常使用poll, select, 和epoll 系统调用. poll, select 和epoll 本质上有相同的功能: 每个都允许一个进程来决定它是否可读或者可写一个或多个文件而不阻塞. 这些调用也可阻塞进程直到任何一个给定集合的文件描述符可用来读或写.因此, 它们常常用在必须使用多输入输出流的应用程…
笔者不知道该用哪个词来形容ValueStack.ActionContext等可以在Struts2中用来存放数据的类.这些类使用的范围不同,得到的方法也不同,下面就来一一介绍. 声明:本文参考Struts2版本为2.3.1.2,内容仅供参考,限于笔者水平有限,难免有所疏漏,望您能友善指出.本文发表于ITEYE,谢绝转载. 1. ValueStack ValueStack在中文版的<Struts2深入浅出>一书中译作“值栈”.其本身数据结构是一个栈,使用者可以把一些对象(又称作bean)存入值栈中…
理解ValueStack的基本机制!对各种现象作出解释. ValueStack实际上就是对OGNL的封装,OGNL主要的功能就是赋值与取值,Struts2正是通过ValueStack来进行赋值与取值的! ValueStack是一个接口,而OgnlValueStack是strtus2中的缺省实现.ValueStack中的数据,分两个部分存放:root和context(这与OGNL中的概念一致),同时ValueStack暴露相关的接口: void setValue(String expr, Obje…
ValueStack基础:OGNL 要了解ValueStack,必须先理解OGNL(Object Graphic Navigatino Language)! OGNL是Struts2中使用的一种表达式语言,它可以用于JSP的标签库中,以便能够方便的访问各种对象的属性:它用于界面将参数传递到Action(并进行类型转换)中:它还可以用于struts2的配置文件中!所以,非常有必要理解OGNL的基本机制. Root对象 OGNL称为对象图导航语言.所谓对象图,即以任意一个对象为根,通过OGNL可以访…
Struts1工作原理图: 1.初始化:struts框架的总控制器ActionServlet是一个Servlet,它在web.xml中配置成自动启动的Servlet,在启动时总控制器会读取配置文件(struts-config.xml)的配置信息,为struts中不同的模块初始化相应的对象.(面向对象思想) 2.发送请求:用户提交表单或通过URL向WEB服务器提交请求,请求的数据用HTTP协议传给web服务器. 3.form填充:struts的总控制器ActionServlet在用户提交请求时将数…
struts2的工作机制 原文:http://eoasis.iteye.com/blog/642586 概述 本章讲述Struts2的工作原理. 读者如果曾经学习过Struts1.x或者有过Struts1.x的开发经验,那么千万不要想当然地以为这一章可以跳过.实际上 Struts1.x与Struts2并无我们想象的血缘关系.虽然Struts2的开发小组极力保留Struts1.x的习惯,但因为Struts2的核 心设计完全改变,从思想到设计到工作流程,都有了很大的不同. Struts2是Strut…
1. 数据传输背后机制:ValueStack(值栈) 在这一切的背后,是因为有了ValueStack(值栈)! ValueStack基础:OGNL OGNL是Struts2中使用的一种表达式语言,它可以用于JSP的标签库中,以便能够方便的访问各种对象的属性:它用于界面将参数传递到Action(并进行类型转换)中:它还可以用于struts2的配置文件中!所以,非常有必要理解OGNL的基本机制. Root对象 OGNL称为对象图导航语言.所谓对象图,即以任意一个对象为根,通过OGNL可以访问与这个对…
1. 远程调用的数据传输 在远程的函數中,必然会需要传递一些数据,那这些数据是怎么传输的呢? 在IPC中,Proxy端的作用就是将一些参数打包,然后发送出去,下面是在Proxy端经常会遇见的调用远程方法的代码. 可以看到,发送和接收的数据都是通过Parcel來打包的. class ActivityManagerProxy implements IActivityManager { public int startActivity(IApplicationThread caller, Intent…
原文地址:http://blog.csdn.net/li_tengfei/archive/2010/12/25/6098134.aspx 前言: Strut2的Action类通过属性可以获得所有相关的值,如请求参数属性值等.要获得这些参数值,我们要做的唯一一件事就是在Action类中声明与参数同名的属性.在Struts2调用Action类的Action方法(默认是execute方法)之前,就会为相应的Action属性赋值.要完成这个功能,有很大程度上,Struts2要依赖于ValueStack对…
我会对android的消息处理有三个核心类逐步介绍,他们分别是:Looper,Handler和Message.其实还有一Message Queue(消息队列),知道它是队列即可,就像我们所熟知的数组,它是另一种数据结构,这里不对它做介绍了. 我会以尽量浅显易懂的文字去描述,逐步介绍三个核心类,这个也是安卓面试常考的题目,希望大家都能学会Handler机制,如果文章上有一些谬误,或者说你们有什么意见或者建议,欢迎留言. 概述 1.Looper,Handler,Message和MessageQueu…
一.OGNL概述 1.1 什么是OGNL OGNL的全称是对象图导航语言( object-graph Navigation Language),它是一种功能强大的开源表达式语言,使用这种表达式语言,可以通过某种表达式语法,存取Java对象的任意属性,调用Java对象的方法,同时能够自动实现必要的类型转换.如果把表达式看作是一个带有语义的字符串,那么OGNL无疑成为了这个语义字符串与Java对象之间沟通的桥梁. 1.2 OGNL的作用 Struts2默认的表达式语言就是OGNL,它具有以下特点:…