Struts2
Struts2
绣花针
心有猛虎,细嗅蔷薇
展开
-
Struts2之起源与执行流程(核心过滤器StrutsPrepareAndExecuteFilter)
一、起源Struts是一种基于MVC模式的轻量级Web框架,它的本质相当于一个Servlet,它自问世以来,就收到广大Web开发者的关注,并广泛应用于各种企业系统的发开中Struts1是最早的基于MVC模式的轻量级Web框架,它能够合理的划分代码结构,并包含验证框架、国际化框架等多种实用工具框架,但是随着技术的进步,Struts1的局限性也越来越多的暴露出来,为了符合更加灵活、高效的开发需...原创 2018-08-10 19:37:12 · 485 阅读 · 0 评论 -
Spring之整合Struts2
一、Action由Struts2自身创建1.在struts.xml中配置action <action name="user" class="com.mark.demo.UserAction" method="login"> <result name="success">/index.jsp</result>原创 2019-01-06 15:45:26 · 123 阅读 · 0 评论 -
Struts之Action中提供的处理结果返回视图类型
Action中提供的处理结果返回视图类型public class LoginAction { // 处理登录请求 public String login() { return SUCCESS; }}1.SUCCESS(执行正确)Action正确的执行完成,返回相应的视图,success是name属性的默认值2.ERROR(执行错误)表...原创 2019-01-06 13:27:46 · 313 阅读 · 0 评论 -
JSP之EL表达式获取Struts中值栈数据
获取Struts中值栈数据在action中的实例变量,没有向EL表达式支持的域添加数据,却能在jsp中用EL表达式取出,是因为在struts2中使用的request被增强了public class StrutsRequestWrapper extends HttpServletRequestWrapper { /** * The constructor * ...原创 2019-01-05 19:39:14 · 308 阅读 · 0 评论 -
OGNL之Struts2中应用
一、引用Struts2的标签库 <%@ taglib uri="/struts-tags" prefix="s" %>二、使用OGNL表达式1.获取对象中的方法 <s:property value="'HelloWorld'.length()"/>2.获取对象中的静态方法(struts2默认关闭对静态方法的访问,需要开启一个常量) ...原创 2019-01-05 19:19:43 · 89 阅读 · 0 评论 -
SpringMVC与Struts2区别
一、入口SpringMVC的入口是一个servlet即前端控制器DispatcherServletStruts2入口是一个filter过滤器StrutsPreparedAndExcuteFilter 二、请求参数SpringMVC是基于方法开发(一个url对应一个方法),请求参数传递到方法的形参Struts2是基于类开发,传递参数是通过类的属性(set get),传递到方法的成...原创 2018-12-31 12:47:16 · 177 阅读 · 0 评论 -
Struts之数据校验与校验错误处理
一、数据校验1.手动编码(继承ActionSupport重写拦截器validate方法)繁琐(1)数据校验Struts2提供的拦截器<interceptor name="validation" class="org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor"/>(2)手动...原创 2018-11-07 10:33:23 · 579 阅读 · 0 评论 -
Struts2之值栈ValueStack
一、值栈ValueStack(数据中转站)ValueStack是Struts的一个接口,OgnlValueStack是ValueStack的实现类,客户端发起一个请求Struts2架构会创建一个Action实例,同时创建一个OgnlValueStack值栈实例,OgnlValueStack贯穿整个Action的生命周期,Struts2中使用OGNL将请求Action的参数封装为对象存储到值栈中...原创 2018-08-13 19:15:32 · 1146 阅读 · 0 评论 -
Struts2之参数封装
一、属性驱动1.提供属性set方法的方式(无需get方法) <form action="${pageContext.request.contextPath }/addUser_addCustomer" method="post"> 用户名:<input type="text" name="username"><br> 年龄:&a原创 2018-08-13 11:05:48 · 178 阅读 · 0 评论 -
Struts2之访问Servlet API(两者之间是解耦的)
访问Servlet API方式如果表单中有参数如何进行接收,又或者我们需要向页面保存一些数据,又要如何完成?在Struts2中,Action并没有直接和Servlet API进行耦合,也就是说在Struts2中的Action不能直接访问Servlet API。虽然,Struts2中的Action访问Servlet API麻烦一些,但是这却是Struts2中Action的重要改良之一,方便A...原创 2018-08-12 20:02:43 · 189 阅读 · 0 评论 -
Struts2之配置文件详解
一、常用配置<!--struts-contants.xml--><struts> <!-- 所有匹配*.action的请求都由struts2处理 --> <constant name="struts.action.extension" value="action" /> <!-- 是否启用开发模式 --&原创 2018-08-11 17:05:01 · 10263 阅读 · 1 评论 -
Struts2之标签库
一、概述在JavaWeb中,Struts2标签库是一个比较完善,而且功能强大的标签库,它将所有标签都统一到一个标签库中,从而简化了标签的使用,它还提供主题和模板的支持,极大地简化了视图页面代码的编写,同时它还提供对Ajax的支持,大大的丰富了视图的表现效果。与JSTL(JSP Standard Library,JSP标准标签库)相比,Struts2标签库更加易用和强大。二、分类Stru...原创 2018-08-14 16:03:05 · 167 阅读 · 0 评论 -
Struts2之拦截器(拦截客户端对Action访问)
一、概述 拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截,然后再之前或之后加入某些操作,拦截器是AOP的一种策略。在WebWork的中文文档的解释为,拦截器是动态拦截Action调用对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后代码,也可以在一个Action前阻止其执行。同时,也是提供了一种...原创 2018-08-14 13:34:32 · 414 阅读 · 0 评论 -
Struts2之配置流程
一、配置web.xml中Struts2核心过滤器 <!-- Struts2核心过滤器 --> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter...原创 2018-08-10 20:36:09 · 145 阅读 · 0 评论 -
过滤器(Filter)和拦截器(Interceptor)的区别
一、过滤器(Filter)1.含义它依赖于servlet容器,配置于web.xml。Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是设置字符集、控制权限、控制转向、做一些业务逻辑判断等。在实现上,基于函数回调,它可以对几乎所有请求进行过滤。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截...原创 2019-01-02 21:00:41 · 414 阅读 · 0 评论