struts.xml中的配置:
<action name="DownloadFileAction" class="DownloadFileAction">
<result type="stream">
<param name="contentDisposition">attachment;filename=${FileName}</param>
<param name="inputName">downloadFile</param>
<param name="contentType">${contentType}</param>
</result>
</action>
第一次请求下载Id为4的文件
第二次请求下载Id为4的文件
实际上第二张图的2.14mb才是要下载的文件的实际大小,而第一张图的10.23mb是之前另一个要请求下载的文件的大小,每次都要在第二次刷新才能正确显示当前要下载的文件的大小,这是什么问题?
问题补充:通过后台可以输出文件大小是正确的
问题补充:action中的代码:
public InputStream getDownloadFile() {
System.out.println("id is :-------------"+Id);
SourceFile sourceFile = fileServiceInterface.downloadSourceFile(Id);
this.FileName = sourceFile.getFileName();
try {
this.FileName = new String(this.FileName.getBytes(), "iso8859-1");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
this.contentLength=sourceFile.getFileContent().length;
this.contentType=sourceFile.getFileType();
InputStream inputStream=new ByteArrayInputStream(sourceFile.getFileContent());
return inputStream;
}
dao层的代码:
public SourceFile downloadSourceFile(long Id) {
Session session=sessionFactory.openSession();
SourceFile sourceFile=(SourceFile) session.load(SourceFile.class, Id);
System.out.println("sourceFileId:"+sourceFile.getId());
System.out.println("fileName:"+sourceFile.getFileName());
System.out.println("fileSize:"+sourceFile.getFileSize());
return sourceFile;
}
问题补充:控制台输出:
id is :-------------3
sourceFileId:3
Hibernate: select sourcefile0_.Id as Id1_0_, sourcefile0_.ConferenceInfo as Conferen2_1_0_, sourcefile0_.FielName as FielName1_0_, sourcefile0_.FileContent as FileCont4_1_0_, sourcefile0_.FileType as FileType1_0_, sourcefile0_.FileSize as FileSize1_0_ from SourceFile sourcefile0_ where sourcefile0_.Id=?
fileName:照片.zip
fileSize:10730318
id is :-------------4
sourceFileId:4
Hibernate: select sourcefile0_.Id as Id1_0_, sourcefile0_.ConferenceInfo as Conferen2_1_0_, sourcefile0_.FielName as FielName1_0_, sourcefile0_.FileContent as FileCont4_1_0_, sourcefile0_.FileType as FileType1_0_, sourcefile0_.FileSize as FileSize1_0_ from SourceFile sourcefile0_ where sourcefile0_.Id=?
fileName:spring中文API.chm
fileSize:2247371
相关推荐
SSH框架是指将Struts、Spring以及Hibernate这三个开源框架进行整合,以实现更加强大、灵活且可扩展的企业级应用开发。本文将详细介绍如何在MyEclipse 8.5环境下搭建基于Struts2.1、Spring3.0以及Hibernate3.3的SSH...
6. **文件结构**:尽管没有提供具体的文件列表,但一个标准的Struts2+Spring2+Hibernate3项目通常包含以下部分:源代码(src目录),配置文件(如struts.xml、spring配置文件、hibernate配置文件),Web资源(Web-...
根据提供的标题、描述以及部分内容,本文将详细解析与MYECLIPSE + STRUTS2 + SPRING4 + HIBERNATE4 + STRUCTS2S+OGNL + MYSQL_5.7.12相关的技术栈及其应用。这些技术在企业级开发中非常常见,能够帮助开发者构建高效...
1、可以运行(发布后,删除\Tomcat 6.0\webapps\ssh\WebRoot\WEB-INF\lib下的asm-2.2.3.jar) 2、采用Struts1.2 + Spring2.5 + Hibernate3.2 整合开发 3、SSH入门级实例
SSH(Struts2、Spring、Hibernate)是Java开发中常用的三大开源框架,它们的组合能有效地实现MVC(Model-View-Controller)设计模式,提高开发效率并降低耦合度。以下是S2S3H3(Struts2.3.4+Spring3.0+Hibernate3.3...
Struts2+Spring2+Hibernate3 整合方案是一种常见的Java Web开发技术栈,用于构建高效、可维护的Web应用程序。这三个框架各自负责不同的职责:Struts2作为MVC(模型-视图-控制器)框架处理请求和响应,Spring作为应用...
### Struts2+Hibernate+Spring 经典整合实例教程 #### 概述 本文档将详细介绍如何使用 MyEclipse 7.0 开发环境搭建基于 Struts2、Hibernate 和 Spring 的经典整合项目,并通过示例工程 BookShop 来具体演示整个...
总结,该例示注释非常详细,演示Spring托管Hibernate和Struts的Action, 以及Spring的事务声明(包括1.x与2.x的用法)与非事务声明的使用方式。 使用DWR可以方便的使用Spring托管的持久层功能。 目的:希望广大Java...
### Struts2+Spring2+Hibernate3.1开发环境搭建详解 #### 一、概述 在Java Web开发领域,Struts2、Spring2与Hibernate3.1是非常经典的组合,它们分别负责表现层、业务逻辑层以及数据访问层,能够帮助开发者快速...
- 将Struts2、Spring和Hibernate的配置文件整合在一起,实现请求分发、业务逻辑处理和数据持久化。 - 在Struts2的Action中,可以通过Spring的@Autowired注解来注入服务层对象,实现依赖注入。 - 使用Hibernate的...
1、使用技术 struts2 + hibernate + spring + dwr 2、开发环境 tomcat6.0 + jdk1.5 + eclipse + MySQL5.0 3、根据你的需要开放自主交易和寄售交易 4、在线订单即时提醒,让你更快,更准确的发货 5、整合易宝最新...
开发环境为MyEclipse 6.0 + Tomcat 5.0 + SQL Server 2000,配置环境则采用了Struts 1.2 + Spring 2.0 + Hibernate 3.1。 #### 二、创建Java-Web Project工程 1. **项目创建**: - 首先,在MyEclipse中创建一个新...
### Struts2 + Spring2 + Hibernate3 整合实例源码分析 #### 一、概述 随着企业级应用的发展,为了提高开发效率和系统维护性,越来越多的项目开始采用MVC设计模式。其中,Struts2作为MVC框架中的佼佼者,在前端...
SSH(Struts2+Spring2+Hibernate3.1)是一种经典的Java Web开发框架组合,用于构建高效、模块化的应用程序。以下是关于如何搭建SSH开发环境的详细步骤: 1. **Struts2配置**: - **添加依赖库**:在项目中引入...
Struts2、Hibernate3和Spring3是Java Web开发中经典的三大框架,它们分别负责MVC模式中的表现层、持久层和业务层管理。这个压缩包包含这三个框架的所有库文件(Lib),以及对应的Tomcat 6.0服务器和Eclipse 3.4集成...
SSH资源环境搭建,ssh开发配置教程,以供参考; 开发环境:MyEclipse6.0+Tomcat5.0+SQLServer2000 配置环境:Struts2+Spring2+Hibernate3.1
Struts2、Spring和Hibernate是Java Web开发中的三个核心框架,它们各自负责应用程序的不同层面:Struts2专注于表现层,Spring则是一个全面的轻量级框架,包括依赖注入(DI)、面向切面编程(AOP)以及数据访问层的...
### Struts2 + Hibernate3 + Spring2.5 配置详解 #### 一、项目创建与集成环境搭建 1. **创建Web项目** - 使用MyEclipse 8.5 创建了一个名为`ssh`的Web项目。 - ![创建项目](创建项目.png) - 将该项目添加至...
5. Tomcat6.0 6. MySql 5.0 7. 其他(SVN等) 开发需求: 1. 开发分为简单的用户注册模块和用户登录模块 其中在用户注册模块中,用户名是唯一的,也就是说需要对用户名进行验证 在用户登录模块中需要对用户的用户名...