文件管理 · 2022年8月15日

struts2下载文件夹|struts2文件上传和下载

A. 使用 struts2 下载文件问题。

o.clear(); o = pageContext.pushBody(); 在那个输出流的地方的o.close()前面加这两句 试下看行不行

B. struts2的action中去访问一个文件,下载到本地

要通过param来写<result type="redirectAction"> <param name="namespace">/p1</param> (这里内要写package的容namespace) <param name="actionName">a1</param> (这里写action的name)</result>

C. 用struts2 做了一个文件下载,下载的文件为什么会丢失后缀名,其他浏览器没有这种现象,我的文件名是英文

打开文件夹选项,然后在如图的地方加入有个勾就去掉

D. struts2文件上传和下载

1,上传方法 (1),页面form表单添加一个属性为enctype="multipart/form-data" 和method="post" (2),假设上传预览框为 <input type="file" name="myfile" /> (3),控制器接值的方法为 private File myfile; //要上传的文件 private String myfileFileName; //要上传文件名称 private String myfileContentType; //要上传文件类型 别忘了做set方法 (4), 接到值后可以保存到数据库,也可以保存到硬盘, >>1 保存到数据库, 数据库表中对应字段要设置为BLOB类型 >>2 保存到硬盘代码如下 InputStream in = new FileInputStream( myfile); OutputStream out = new FileOutputStream( new File("d:\\upload\\"+myfileFileName)); byte[] buffer = new byte[ in.available() ]; int ins = in.read(buffer);//读取字节到buffer中 //ins == -1 时 。就已经是文件的结尾了 while ( ins != -1 ) { out.write(buffer, 0, ins);//将缓存buffer中的数据写到文件中 ins = in.read(buffer); } in.close(); out.flush(); out.close(); 2,下载 (1), 把要下载的文件转成一个输入流InputStream 例如,利用hibernate取得一个文件,文件类型在实体类中为byte[]类型, inputStream = new ByteArrayInputStream(book.getMyfile); 其中inputStream 为全局变量,并且做setter和getter方法 (2),在控制器对应的action节点中(struts2配置文件中)添加一个result节点如下:<result name="download" type="stream"> <param name="contentType">application/zip</param> <param name="inputName">inputStream</param> <param name="contentDisposition">attachment;filename="${myFileFileName}"</param> <param name="bufferSize">1024</param> </result> 这样,就可以实现上传和下载了.

E. 怎样安装struts2

配置步骤:

1、下载并解压struts2。

F. struts2下载到指定路径

/** * @getDownloadFile * 此方法对应的是struts.xml文件中的: <param name="inputName">downloadFile</param> */ public InputStream getDownloadFile() throws FileNotFoundException { //一系列指定下载名称或者其他操作 String path = 路径 + "/" + 包含后缀的文件名称; // 此方法会下载到classPath下的文件夹 InputStream ins = ServletActionContext.getServletContext() .getResourceAsStream(path); //此方法为自己设置的路径 InputStream ins2 = new FileInputStream(new java.io.File(path)); //返回即可,返回哪种由你自己决定了 return ins2; }

G. Struts2下载文件的问题

inline这个是内嵌而attachment只是依附应该是这个原因文本或xls无法读取依附..

H. Struts2根据数据库的保存的路径下载对应的文件

struts2有专门的拦截器进行上传工作, 1.下载struts2上传包commons-fileupload-1.2.jar 2.在action中接收并处理文件 3.在struts.xml中对应版的action中进行配置上权传拦截器 4.在server层中写业务处理操作 5.层写数据库插入语句 有什么不清楚的可以网络Hi我!~good luck! 具体代码,看我下面给你的参考地址!

I. 怎么使用struts2,jar包已下载下来,怎么导入到哪里

我用的是struts2.2.1.1-all.zip(不管用struts2的哪个版本,道理都一样,找对应的包就行了) 例如你建一Web Project,名为Struts2导入项目所需要的jar包,放入/Struts2/WebRoot/WEB-INF/lib下面方法一:在struts2存放目录(以我的举例说明)F:\JavaWeb教程\ssh-jar\struts-2.2.1.1-all\struts-2.2.1.1\lib下面找到以下包commons-fileupload-1.2.1.jar//文件上传时用的,为了以后用到,最好加入commons-io-1.3.2.jar//同上commons-logging-1.0.4.jarfreemarker-2.3.16.jarjavassist-3.7.ga.jarognl-3.0.jarstruts2-core-2.2.1.1.jarxwork-core-2.2.1.1.jar共8个包,将其复制到/Struts2/WebRoot/WEB-INF/lib下面方法二:(不用复制,导入法)(1).右击项目名称Struts2–>Build Path–>Configure Build Path…–>打开一对话框(2).选择左边的"Java Build Path"选项–>选择Libraries选项卡–>Add External JARs–>去寻找F:\JavaWeb教程\ssh-jar\struts-2.2.1.1-all\struts-2.2.1.1\lib下面的指定的jar包导入即可

J. struts2 实现 下载整个文件夹

Step 1、MyEclipse中新建项目抄struts_download,并导入需要袭用到的struts 2的JAR文件,web.xml中配置好FilterDispatcher过滤器;Step 2、编写实现文件下载的action类FileDownloadAction.java,详细代码太长,留下邮箱,我发给你。