一 Struts2环境配置

1.准备jar包,核心jar包有:

2.创建Struts2项目并导入jar包

3.在Struts2项目中src下创建Struts.xml配置文件

4.在Web.xml文件中配置拦截器

其中:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter来自

二使用

1.Struts自动设值:

1.1必须继承ActionSupport这个类

1.2将你要自动设值得对象进行 get set

1.3必须要在struts.xml文件中继承struts-default

2.Struts页面操作:

2.1寻找到struts.xml中的result标签中name属性和后台return配对后进行跳转页面。

2.2result的属性:

重点介绍:

{  dispatcher :跳转到一个指定的jsp页面 , 在没有设值type属性的时候为默认属性。

redirect:重定向,可以执行跳转到一个url。

  redirectAction:可以指定跳转到一个action. 通常用这个。

}

其他:

1,dispatcher [默认配置]
org.apache.struts2.dispatcher.ServletDispatcherResult

默认结果类型,用来呈现JSP页面

2,chain
com.opensymphony.xwork2.ActionChainResult
将action和另外一个action链接起来

3,freemarker  
org.apache.struts2.views.freemarker.FreemarkerResult 
呈现Freemarker模板

4,httpheader  
org.apache.struts2.dispatcher.HttpHeaderResult   
返回一个已配置好的HTTP头信息响应

5,redirect  
org.apache.struts2.dispatcher.ServletRedirectResult 
将用户重定向到一个已配置好的URL

6,redirectAction  
org.apache.struts2.dispatcher.ServletActionRedirectResult 
将用户重定向到一个已定义好的action

7,stream  
org.apache.struts2.dispatcher.StreamResult  
将原始数据作为流传递回浏览器端,该结果类型对下载的内容和图片非常有用

8,velocity  
org.apache.struts2.dispatcher.VelocityResult   
呈现Velocity模板

9,xslt  
org.apache.struts2.views.xslt.XSLTResult  
呈现XML到浏览器,该XML可以通过XSL模板进行转换

10,plaintext  
org.apache.struts2.dispatcher.PlainTextResult   
返回普通文本类容
-----------------------------------------------------------------------------
这此result-type可以在struts2-core-2.0.11.1.jar包或struts2源代码中的struts-default.xml文件中找到,在这个文件中找到<result-types>标签,所有的result-type都在里面定义了。

三Struts的通配符

*就是他的通配符

{}获取通配符的格式

第一个* 对应的格式是{1}

第二个* 对应的格式是{2}

...

..

四Struts的国际化

<constant name="struts.custom.i18n.resources" value="zr"></constant>

创建zr_en_US.properties ,zr_zh_CN.properties等文件

文件内容英语配置英语语言格式

中文内容配置根据网页版Unicode编码转换工具或者jdk中的Unicode编码转换工具或者MyEclipseUnicode编码转换工具 实现转码。

Struts2项目自动识别语言的依据:

是文件的名称为何种语言

五Struts的上传下载

上传

注意: <interceptor-ref name="defaultStack"></interceptor-ref> name为拦截器中的固定名称

      <interceptor-ref name="fileUpload" >     也是为拦截器中固定名称

       为什么要调用拦截器中这两个名称:因为一次拦截器达不到控制文件的大小类型我们需要再次调用拦截器中的上传。     

下载

1.<result type="stream">

<param name="contentDisposition">attachment;filename=${fileName}</param>

</result>

attachment:为下载的弹出层

filename=${fileName} : 为下载时候的文件名称

注意:result 的type属性必须为stream流对象 这样可以是后台默认执行   getInputStream

2.public InputStream getInputStream()throws Exception{

}

注意:方法名为固定写法

      返回值必须为流对象行使 这样子可以使用方法被默认执行

struts2相关简单介绍的更多相关文章

  1. Struts2框架简单介绍

    如需,了解Struts2详情,请点击,传送门 工作原理 在Struts2 框架中的处理大概分为以下步骤: 1.客户端初始化一个指向servlet容器(例如Tomcat)的请求. 2.这个请求经过一系列 ...

  2. 简单介绍Struts2

    Struts2概述 Struts2虽然是Struts1的基础上发展起来的,但是实质上是以WebWork框架为核心,为传统的Struts1注入了WebWork的设计理念,统一了Struts1和WebWo ...

  3. python06-列表表达式、生成器表达式及其面试题、解耦简单介绍、函数递归相关

    目录: 一.列表推导式 二.生成器表达式 三.集合生成器 四.生成器面试题 五.解耦简单介绍 六.函数递归相关 一.列表推导式 需求:将[1,3,5]中的每个元素平方 正常思路: new_list = ...

  4. 简单介绍几种Java后台开发常用框架组合

    01 前言 Java框架一直以来都是面试必备的知识点,而掌握Java框架,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能对当前正在开发中的系统有整体的认知,从而更好的熟悉和学习技术,这篇 ...

  5. Linux的简单介绍和常用命令的介绍

    Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...

  6. iOS-iOS开发简单介绍

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

  7. UIDynamic(简单介绍)

    一.简单介绍 1.什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如:重力.弹性碰撞等现 ...

  8. 简单介绍一下R中的几种统计分布及常用模型

    统计学上分布有很多,在R中基本都有描述.因能力有限,我们就挑选几个常用的.比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示. 统计分布每一种分布有四个函数:d――density(密度函数) ...

  9. iOS开发——UI精选OC篇&UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍

    UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍 一:UIApplication:单例(关于单例后面的文章中会详细介绍,你现在只要知道 ...

随机推荐

  1. MySql三大范式与数据库设计和表创建常用语句

    [数据库设计的三大范式] 1.第一范式(1NF First Normal Fromate):数据表中的每一列(字段),必须是不可拆分的最小单元.也就是确保每一列的原子性. 例如: userInfo: ...

  2. Tp框架获取客户端IP地址

    /** * 获取客户端IP地址 * @param integer $type 返回类型 0 返回IP地址 1 返回IPV4地址数字 * @return mixed */ function get_cl ...

  3. mongodb取出最大值与最小值

    $res=self::aggregate([ ['$match'=>[ 'msg_id'=>1007, 'D'=>16, ]], ['$group'=>[ '_id'=> ...

  4. template might not exist or might not be accessible by any of the configured Template Resolvers

    距离上一篇文章已经很长时间了,最近太忙碌了,今天发布spring boot遇到一个问题,找了好久才找到解决办法,今天贴出来和大家一起分享下,首先看错误信息 HTTP Status 500 - Requ ...

  5. 【Android Developers Training】 11. 支持不同语言

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  6. 详解Mysql自动备份与恢复

    通过 mysqldump命令,直接生成一个完整的 .sql 文件 Step 1: 创建一个批处理备份SQL c: cd C:Program Filesmysql5.6.24bin mysqldump ...

  7. Apollo框架试玩

    2017年7月5日,百度举行了AI开发者大会,在会上发布了Apollo项目,并进行了演示,该项目在Github上已经能够被访问.出于一个程序员的好奇,昨天试玩了一把,确实不错. http://apol ...

  8. Tomcat学习笔记(一)一个简单的Web服务器

    内容为<深入剖析Tomcat>第一章重点,以及自己的总结,如有描述不清的,可查看原书. 一.HTTP协议: 1.定义:用于服务器与客户端的通讯的协议,允许web服务器和浏览器通过互联网进行 ...

  9. javascript运动框架(二)

    紧接着上面写的... 给div加一个边框,border:1px solid black window.onload = function(){      var div = document.getE ...

  10. (转载)Oracle10g 数据泵导出命令 expdp 使用总结(三)

    原文链接:http://hi.baidu.com/edeed/item/19aa0df856da3e19a6298894 Oracle10g 数据泵导出命令 expdp 使用总结(一) 14. JOB ...