java之struts2之文件下载】的更多相关文章

1.在实际应用开发中,文件下载功能也非常常见. 2.最简单的文件下载方式是通过超链接来进行文件下载: <body> <a href="download/s.txt">课件</a><br/> <a href="download/t.jpg">美女</a><br/> <a href="download/jstl-1.2.jar">jstl</a>…
首先先来说下关于文件下载的原理: 服务端为客户端提供了一个下载服务,所以服务端需要一个输出流(把客户请求下载的文件输出),相对于服务端来说,客户端需要下载接收一个文件,所以它需要一个输入流(接收文件). 服务器读取要下载文件的内容,用一个Response响应流写回并设置HTTP头信息ContentType(文件类型). ContentDisposition(以什么方式打开) 下面给出一个小Demo,具体代码具体分析吧 1.首先是提供下载的页面:download.jsp 给出超链接到Action并…
介于上篇我们讲述了基于 Struts2 的单文件和多文件上传,这篇我们来聊一聊基于 Struts2 的文件下载. 1.导 jar 包 commons-io-2.0.1.jar struts2-core-2.3.15.3.jar xwork-core-2.3.15.3.jar struts2-sunspoter-stream-1.2.jar 2.web.xml 配置 Struts2 核心过滤器 <filter> <filter-name>struts2</filter-name…
Struts2提供了stream结果类型,该结果类型是专门用于支持文件下载功能的.配置stream类型的结果需要指定以下4个属性. contentType:指定被下载文件的文件类型 inputName:指定被下载文件的入口输入流 contentDisposition:指定下载的文件名 bufferSize:指定下载文件时的缓冲大小 struts2文件下载示例: 1.处理文件下载的Action: /** * Description:Struts2控制文件下载 * Author: Eleven *…
微信企业号回调模式配置解说 Java Servlet+Struts2版本号 echostr校验失败解决 echostr校验失败,请您检查是否正确解密并输出明文echostr 异常java.security.InvalidKeyException:illegal Key Size 也就是echostr校验失败,请您检查是否正确解密并输出明文echostr这个错误 企业微信登陆地址http://qy.weixin.qq.com/ 配置成功以后 Servlet public void doGet(Ht…
Java之struts2框架学习 About Struts2 Struts也是一款MVC框架 , Struts2是Struts的下一代产品,是在Struts1和WebWork的技术基础上进行了合并的全新的Struts2框架 其全新的Struts2的体系结构与Struts1的体系结构差别巨大.Struts2以WebWork为核心 Struts2=Struts1+WebWork,而WebWork的核心就是XWork. XWork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性…
jsp: <%@ 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/loose.dtd">…
Step1:导入支持jar包 commons-fileupload-1.3.1.jar commons-io-2.4.jar jstl-1.2.jar standard-1.1.2.jar commons-compress-1.10.jar 文件压缩工具包 Step2:编写请求下载jsp <script type="text/javascript" src="jquery-1.8.3.js"></script> <%@taglib pr…
实现文件下载: 1.导包:commons-fileload-xx.jar commons-io-xx.jar 2.jsp页面: <s:iterator value="#session.fileList"> <a href="download.action?fileName=<s:property />"><s:property /></a> <br> </s:iterator> 3.…
在struts.xml中配置如下 <action name="download" class="cn.itcast.domain.User" method="download"> <result type="stream" name="success"> <param name="contentType">application/octet-strea…
http://pengranxiang.iteye.com/blog/259401 一.通过struts2提供的下载机制下载文件: 项目名为 struts2hello ,所使用的开发环境是MyEclipse 6,当然其实用哪个IDE都是一样的,只要把类库放进去就行了,文件下载不需要再加入任何额外的包.读者可以参考文档:http://beansoft.java-cn.org/myeclipse_doc_cn/struts2_demo.pdf ,来了解怎么下载和配置基本的Struts 2开发环境.…
本测试有两个模块,一个是文件上上传,一个是文件下载,文件下载的时候会检查是否足有权限,如果没有,就会转发到登录页面,如果有权限,就会直接启动下载程序,给浏览器一个输出流. 下面直接上我的代码: 登录表单 <body> <form id="form1" name="form1" method="post" action="login.action"> <p> <label for=&qu…
原理就不说了,直接上配置文件及代码,用来备用 首先,将三大框架所需要的jar包导入项目中 导入  struts2-spring-plugin-2.3.3.jar包  此包的作用是作为struts2 与spring 的桥梁 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.5" xmlns="http://java.sun.com/xml…
struts2的核心和工作原理   在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处? 设计目标 Struts设计的第一目标就是使MVC模式应用于web程序设计.在这儿MVC模式的好处就不在提了. 技术优势 Struts2有两方面的技术优势,一是所有的Struts2应用程序都是基于client/server HTTP交换协议,The Java Servlet API揭示了Java Servlet只是Java API的一个很小子集,这样我们可以在业…
来自:http://blog.csdn.net/longshengguoji/article/details/39433307 需求:实现一个具有文件下载功能的网页,主要下载压缩包和图片 两种实现方法: 一:通过超链接实现下载 在HTML网页中,通过超链接链接到要下载的文件的地址 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title h…
1.设置struts的字符编码,能够在struts.xml中添加下面代码: <constant name="struts.i18n.encoding" value="GBK" /> 或者找到struts的默认配置文件,位置在 struts2-core-2.3.16.3.jar 里面 org.apache.struts2 包中的 default.properties 文件.改动下面配置: ### This can be used to set your d…
Struts2环境配置 进口Struts2的需要jar包 在WEB-INF/classes(src)文件夹下创建struts.xml文件 在web.xml文件里加入Struts过滤器信息 经常使用配置文件 struts.xml:用于存放Action映射关系.设置Struts配置信息 web.xml:用于配置容器的Struts过滤器,一般配置例如以下: <filter> <filter-name>struts2</filter-name> <filter-class…
最近在学struts2里面遇到很多错误,今天跟大家分享一下,我的开发工具是Eclipse: 1.到网上下载Struts2的包,这里不再累赘,百度有很多: 2.新建一个项目,记得后面加上web.xml文件: 3.先部署struts2开发环境. (1).在struts2.2以后,我们需要导入的包有以下几个: commons-fileupload-1.2.1.jar commons-io-1.3.2.jar commons-logging-1.0.4.jar commons-lang3-3.1.jar…
从Java的角度谈下文件下载漏洞的产生,然后到他的修复方案.这里我的修复方案是白名单,而没有采用黑名单的方式. 首先先看一段存在文件下载漏洞的代码code: HTML视图页面  download.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <bo…
一: Action类的返回逻辑视图,一般会出现一个场景就是:当前package 标签下,几个action类需要返回同一个页面的时候.这个时候需要全局结果. 全局结果(使用标签<global-result>): <package name="oop" namespace="/" extends="struts-default"> <global-results> <result name="suc…
一:servlet API 1)完全解耦接口: 使用ActionContext类进行相关操作: package jd.com.actioncontex; import com.opensymphony.xwork2.ActionContext; import com.opensymphony.xwork2.ActionSupport; import java.lang.reflect.Array; import java.util.Map; import java.util.Set; publi…
参考资料:https://www.cnblogs.com/xdp-gacl/p/4200090.html 在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件下载功能的实现. 直接贴图和代码:    1.文件列表 2.在Web.xml文件中配置DownLoadServlet <servlet> <servlet-name>DownLoadServlet</servlet-name> <servlet-class>co…
由于工作需要,再次需要写一些简单的Java代码了,曾经的Java编程历历在目,但是却再也找不到以前的感觉了.于是便怀着对儿时Java的记忆,再次踏上Java Web Project. 在此特别鸣谢:http://miaoxianjie.iteye.com/blog/1156831作者,是您让我找回了对Java仅剩的那一点点肤浅,接下来,我们入正题吧. struts与Java web的搭建步骤就参照上面的博文就可以了 项目搭建OK,运行    http://localhost:8080/Porta…
readbook:struts2 先说一下struts1:    struts1使用model II 模式开发,即jsp+java bean+servlet    再说它的缺陷:    1.表现层支持单一,本来在java web应用的世界里,表现层技术选择时不一定必须选择jsp,其它视图层可用于替代选择的技术如 FreeMaker,Velocity等,    但struts 1无法与其进行整合.    2. 过度依赖servlet api    servlet api需要web容器进行初始化,此…
1  Struts2工作原理 一个请求在Struts2框架中的处理大概分为下面几个步骤: 1.client初始化一个指向Servlet容器(比如Tomcat)的请求: 2.这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器.这个过滤器对于Struts2和其它框架的集成非常有帮助,比如:SiteMeshPlugin): 3.接着FilterDispatcher被调用.FilterDispatcher询问ActionMapper来决…
1.在应用项目中,异常的出现时很正常的.而且项目上线后发生异常也很正常的.那么需要对这些异常有相应的处理机制,以便客户能够看你到更加友好的界面.Struts2中提供了异常处理机制. 2.Struts中异常处理实现 a) 在 action 处理类中抛出的异常 public class UserAction { public String add() throws NullPointerException{ if(1==1) throw new NullPointerException("数据为nu…
1.使用struts2时,有时候需要对数据进行相关的验证.如果对数据的要求比较严格,或对安全性要求比较高时,前端 js 验证还不够, 需要在后端再进行一次验证,保证数据的安全性. 2.struts2提供了两种机制来进行后端的数据验证. 编程方式 验证框架 3.通过编程方式来进行数据检验需要继承ActionSupport类.在ActionSupport类中有一个validate方法,在该方法中实现数据校验.如果要通过编程方式进行校验,那么需要在处理类的Action中重写validate方法.在ac…
struts2推荐使用ognl表达式 ognl: object graph navigation language 对象导航图语言 如:school.teacher.address="北京" 1. ognl的使用 public class OgnlTest { public static void main(String[] args) throws OgnlException { //ognl将数据分为两类:常用的和不常用 大的和小的 //把常用的数据放在 获取方便的地方 把不常用的…
这里的数据处理,指的是页面上的数据与Action中的数据的处理. struts2中有3种方式来接收请求提交的数据.分别是:属性驱动方式.对象驱动方式.模型驱动方式 1. 属性驱动方式 要求页面中的表单项的名称与Action处理类中的属性名一样, 并且在Action处理类中提供属性的get/set方法.这样就可以在Action处理方法中获取表单中的数据值了. 如果是转发,也可以在页面中通过el表达式把Action处理类的属性值获取到${属性名}. add.jsp <body> <form…
在 java之struts框架入门教程 基础上,进行下列操作 1.结构对比 原来的项目结构图 现在的结构图 即从结构上可以看出,在HelloStruts项目中增加了config 文件夹(Source Folder) 及user.xml 文件 2.修改配置文件,使struts.xml 中包含 user.xml 配置文件 struts.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts…