摘要:
原文链接:http://struts2.group.iteye.com/group/wiki/1353-ognl-catalyst-for-data-operation-in-struts2首先让我们花费1分钟的时间来简单思考一个问题,MVC这3者之间,到底是通过什么真正融合起来的? 有人说是Controller,因为它是核心控制器,没有Controller,MVC就无从谈起,失去了职责划分的原本初衷。也有人说是View,因为所有的需求都是页面驱动的,没有页面,就没有请求,没有请求,也谈不上控制器和数据模型。 个人观点:贯穿MVC模型之间起到粘合剂作用的是数据。数据在View层成为了展示的内容 阅读全文
摘要:
原文链接:http://www.cnblogs.com/beliefbetrayal/archive/2012/02/11/2347244.htmlOGNL,全称为Object-Graph Navigation Language,它是一个功能强大的表达式语言,用来获取和设置Java对象的属性,它旨在提供一个更高的更抽象的层次来对Java对象图进行导航。AD: 2013云计算架构师峰会超低价抢票中一、OGNL表达式基础知识1. 示例:第一个OGNL程序2. 示例:上下文环境中使用OGNL3. 示例:使用OGNL调用方法4. 示例:使用OGNL操作集合 5. 示例:使用OGNL过滤集合与投影集合二 阅读全文
摘要:
“#”主要有三种用途:访问OGNL上下文和Action上下文,#相当于ActionContext.getContext();下表有几个ActionContext中有用的属性:名称作用例子parameters包含当前HTTP请求参数的Map#parameters.id[0]作用相当于request.getParameter("id")request包含当前HttpServletRequest的属性(attribute)的Map#request.userName相当于request.getAttribute("userName")session包含当前Htt 阅读全文
摘要:
在Struts2中有拦截器的概念,通过它的拦截器可以拦截Action。Struts2的拦截器是通过AOP来实现的,在Spring也有类似的概念。下面的我们先来比较一下Struts2和Spring中AOP的东西。AOP概念Struts2SpringJoinPointAction中方法的执行符合条件方法的执行PointcutAction(不能自己指定)可以通过正则或AspectJ表达式来指定AdviceBefore、After、AroundBefore、After、AroundAspect拦截器拦截器 从上面的比较中可以看到,Struts2的AOP功能比较单一,只能拦截Action类中的方法。S. 阅读全文