struts2笔记
Ascend2015
这个作者很懒,什么都没留下…
展开
-
Struts(7)——OGNL表达式
OGNL的简介 OGNL即Object Graphic Navigation Langauage,译为对象图导航语言,是一种功能强大的表达式语言,通过简单一致的语法,可以轻易地访问对象的属性、方法,遍历整个对象的结构图。Struts2 的默认表达式语言就是OGNL,它试图以OGNL代替原来的EL表达式语言,来实现界面数据的绑定,也就是将视图界面中的某个元素和模型层的某个对象关联在一起,以便修原创 2017-09-13 01:04:13 · 282 阅读 · 0 评论 -
Struts(5)——调用ServletAPI
Struts2 中有一个类,叫做ActionContext,它是Action的上下文,Struts2中的Action就通过它来访问原生Servlet的API。该类中封装了所有用于访问Servlet的方法: 1.static HttpServletRequest getRequest():获得HttpServletRequest对象; 2.static HttpServletResponse g原创 2017-09-10 23:16:12 · 239 阅读 · 0 评论 -
Struts(4)——结果处理方式
结果的处理大致可以分为四种:转发、重定向、转发到Action以及重定向到Action。 这些方式可以在result标签中通过type属性进行配置。1. 转发默认的处理方式是转发ServletDispatcherResult 可以在package org.apache.struts2.dispatcher下查看到其源码,其内部doExcute(String finalLocation, Actio原创 2017-09-10 12:43:23 · 573 阅读 · 0 评论 -
Struts2笔记(3)——Struts的配置文件详解
基础配置1.<package/>元素:将Action配置封装,package中可以有多个Action; name:给予package一个名字作为标识; namespace:给Action的访问路径中定义一个命名空间; extends:继承一个指定包,这里可以先设定为”struts-default”,意为继承默认包,该包在Struts的默认配置文件struts-default.xml中可以找到,它为我原创 2017-09-09 14:10:19 · 523 阅读 · 0 评论 -
Struts2(11)——拦截器(二)
回顾上一篇主要介绍了拦截器的实现方式以及原理,以及自定义拦截器的三种方法,从本质上来说,它们都是实现了Interceptor接口,interceptor会贯穿整个项目的生命周期,根据doIntercept()中拦截业务逻辑与invocation.invoke()方法所处位置的不同分为前处理与后处理的拦截器。拦截方法的返回结果是视图逻辑名,如果拦截业务决定不将请求交由下一级拦截器或者Action处理,原创 2017-09-18 01:03:22 · 402 阅读 · 0 评论 -
Struts2笔记(10)——拦截器(Interceptor)(一)
拦截器(interceptor)用于AOP编程中某个字段或者方法访问前以及被访问后加入某些操作,拦截是AOP的一种实现策略。拦截器的使用还有一个重要的概念,就是拦截器链(InterceptorChain),意味着被使用的拦截器将会按照一定的顺序形成一条链,在访问被拦截的方法或者字段时就会被顺序调用。拦截器的实现原理拦截器大多是通过代理方式实现,Struts2的实现方式相对较为简单。当请求Struts原创 2017-09-16 21:57:01 · 349 阅读 · 0 评论 -
Struts2笔记(2)——Struts的请求流程
Struts2.0简介Struts2是阿帕奇旗下的一款流行的Web框架,基于MVC模式,成功结合了Webwoker和Struts1.X的优势。虽然名字上叫做Struts2.0,但除此之外它和Struts1.X的关系并不大。 Struts2.0的核心功能都是使用拦截器实现“值栈”这个概念,OGNL表达式和Struts2.0标签来解决应用程序数据,以及大量的注解,使得这个框架更易于使用。这些优势足以说原创 2017-09-07 17:25:49 · 403 阅读 · 0 评论 -
struts2笔记(1)——搭建一个HelloWorld
1.导入struts2相关依赖IDE使用IDEA2017 以下是maven的pom.xml<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/原创 2017-09-07 00:52:59 · 332 阅读 · 0 评论 -
Struts2(9)——struts2与OGNL的结合(二)
前面几篇笔记中,我们在jsp页面中向Action传递了参数,通过这样三种方式: 1.属性驱动 将参数作为Action的一个属性 2.对象驱动 将实体类作为Action的属性 3.模型驱动 Action实现ModelDriven接口;实体类作为私有变量并实例化;实现getModel()方法,并返回实体对象。 现在探究一下原理: 在数据提交到Action的过程中将会经过原创 2017-09-14 19:39:31 · 219 阅读 · 0 评论 -
Struts(8)——OGNL与Struts结合的原理
ValueStackValueStack是Struts2的一个借口,字面翻译为值栈,OgnlValueStack是它的一个实现类。在客户端向程序发起请求时,Struts2会创建一个Action,同时创建一个OgnlValueStack的实例,OgnlValueStack贯穿整个Action的生命周期,Struts2将请求参数封装为一个对象放入到值栈中,并通过OGNL表达式访问该对象。OgnlValu原创 2017-09-14 15:39:52 · 293 阅读 · 0 评论 -
Struts2(6)——Action传递参数
1. 将参数作为Action的成员变量在Action中给定一个私有属性,并实现其set、get访问器,然后即可直接接收请求中的参数。package com.imm.demo;import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport;import java.util.Map;pu原创 2017-09-12 20:17:22 · 1539 阅读 · 0 评论