
Struts2
mChenys
这个作者很懒,什么都没留下…
展开
-
二、Struts2配置文件加载顺序
Struts2框架的核心是StrutsPrepareAndExecuteFilter过滤器,该过滤器有两个功:Prepare:预处理,加载核心的配置文件Execute:执行,让部分拦截器执行。那么StrutsPrepareAndExecuteFilter过滤器会加载哪些配置文件呢?通过源代码可以看到具体加载的配置文件和加载配置文件的顺序:init_DefaultProperties()...原创 2018-12-05 15:55:20 · 264 阅读 · 0 评论 -
十三、Struts2实现文件下载
编写Action类package blog.youkuaiyun.com.mchenys.action;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.InputStream;i...原创 2019-06-15 11:10:41 · 233 阅读 · 0 评论 -
十二、Struts2通过拦截器处理中文请求参数乱码的问题
编写拦截器package blog.youkuaiyun.com.mchenys.intercept;import java.io.UnsupportedEncodingException;import java.util.Iterator;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSer...原创 2019-06-14 11:53:42 · 277 阅读 · 0 评论 -
十一、Struts2上传文件
先来一个表单<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/lo...原创 2019-05-30 15:06:14 · 234 阅读 · 0 评论 -
一、Struts2快速入门
概述Struts2是一个基于MVC设计模式的Web层框架,是Struts1的下一代产品,在 struts1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以...原创 2018-12-05 12:19:14 · 453 阅读 · 0 评论 -
十、Struts2返回json数据
创建Actionpackage blog.youkuaiyun.com.mchenys.action;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import com.opensymphony.xwork2.ActionSupport;impor...原创 2018-12-28 09:44:41 · 284 阅读 · 0 评论 -
九、Struts2的值栈
概述值栈就相当于Struts2框架的数据的中转站,向值栈存入一些数据。从值栈中获取到数据。ValueStack 是 struts2 提供一个接口,实现类 OgnlValueStack ---- 值栈对象 (OGNL是从值栈中获取数据的 )。Action是多例的,有多少请求,就创建多少Action实例,每一个Action会创建一个ActionContext对象,代表的是Action的上下文对...原创 2018-12-10 17:49:41 · 215 阅读 · 0 评论 -
八、Struts2自定义拦截器和配置
什么是拦截器拦截器就是AOP(Aspect-Oriented Programming)的一种实现(AOP是指用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作),Struts2中的拦截器只拦截Action类中的某些方法,不能拦截JSP。Struts2拦截器采用责任链模式,在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链, 责任链每一个节点,都可以继续调用...原创 2018-12-07 15:01:54 · 295 阅读 · 0 评论 -
七、Struts2框架的数据封装
什么叫框架的数据封装?就是将原本需要使用Servlet的Api手动去解析请求参数,然后封装成model的操作交给了Struts2框架来完成。Struts2的框架采用了拦截器来完成数据的封装。两类数据封装的方式1.属性驱动方式提供对应属性的set方法进行数据的封装。表单的哪些属性需要封装数据,那么在对应的Action类中提供该属性的set方法即可。表单中的数据提交,最终找到Action类...原创 2018-12-06 18:47:04 · 229 阅读 · 0 评论 -
六、Struts2如何处理结果页面的跳转
结果页面的跳转是配置在struts.xml文件中的,配置后Struts2框架会根据响应类(Action)中的响应方法的返回值去配置文件中找到跳转的页面或者其他处理Action.两种结果页的声明方式1.全局结果页面如果&amp;lt;package&amp;gt;包中的一些action都返回相同的结果,并且跳转的页面都是同一个JSP页面,这样就可以配置全局的结果页面。全局结果页面针对的当前的包中的所有的Ac...原创 2018-12-06 17:27:33 · 726 阅读 · 0 评论 -
五、Struts2框架中如何使用Servlet的API
有两种方式,一种是调用框架提供的api间接的使用Servlet的api,也叫完全解耦的方式,另一种直接使用原生Servlet的API。完全解耦合的方式如果使用该种方式,Struts2框架中提供了一个类,ActionContext类,该类中提供一些方法,通过方法获取Servlet的API,一些常用的方法如下:static ActionContext getContext() :获取Actio...原创 2018-12-06 16:57:08 · 190 阅读 · 0 评论 -
四、Struts2的多种Action类的写法和访问方式
Action类的三种写法1.简单的Java类没有任何继承和实现,例如:package blog.youkuaiyun.com.mchenys;public class HelloAction { /** * 方法权限必须public * 返回值必须String类型 * 方法参数必须是空参数 * @return 返回用于处理跳转的name */ public String h...原创 2018-12-05 18:35:32 · 328 阅读 · 0 评论 -
三、Struts2配置文件的介绍
struts2的配置文件package标签如果要配置&amp;amp;lt;Action&amp;amp;gt;的标签,那么必须要先配置&amp;amp;lt;package&amp;amp;gt;标签,代表的包的概念,包含的属性有:name:包的名称,要求是唯一的,管理action配置,随便起名字。extends:继承,可以继承其他的包,只要继承了,那么该包就包含了其他包的功能,一般都是继承struts-default。原创 2018-12-05 17:04:55 · 171 阅读 · 0 评论 -
十四、Struts2实现文件批量上传
看这篇文章之前,建议先看看单个文件上传的实现十一、Struts2上传文件下面直接在原来工程的基础上,实现支持批量上传的功能。修改User类添加多一个集合,用于保存批量上传文件的相对路径public class User { private String name; private Integer age; private String image;//保存单个文件上传的相对路径 ...原创 2019-06-17 16:54:22 · 416 阅读 · 0 评论