当前位置:首页 » 文件管理 » struts2实现文件上传下载

struts2实现文件上传下载

发布时间: 2022-08-28 04:51:36

Ⅰ 怎样将struts2上传文件保存到数据库

1在你的struts-config中首先不能使用form,使用的话会报错
2在你jsp的form中增加属性enctype="multipart/form-data"
这样你的文件内容会被都城二进制数据传到后台,在后台获取值保存及可以了

Ⅱ 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>
这样,就可以实现上传和下载了.

java 关于struts2文件上传下载

我现在接触的文档上传,是存储在数据库中,因为有全文检索的需要,存储在CLOB中,
使用struts2有文档上传限制,现在看来是30MB左右

Ⅳ struts,struts2怎么实现文件上传啊,想百度 不知道百啥关键字=。=

action中如下:
private String uploadCounType;
private String uploadFileName;
private File upload;

方法体:
FileInputStream in=new FileInputStream(upload);
String path=ServletActionContext.getRequest().getSession().getServletContext().getRealPath("/")+ "upload"+"\\"+uploadFileName;
FileOutputStream out=new FileOutputStream(path);
System.out.println(path);
byte[]buffer=new byte[1024];
int len=0;
while((len=in.read(buffer))>0){
out.write(buffer,0,len);

out.close();
in.close();

jsp文件:
<form enctype="multipart/form-data" action="upload!upload" method="post">
<s:file name="upload" label="上传文件" ></s:file>
<s:submit value="上传"></s:submit>
</form>

struts.xml文件:
<action name="upload" class="con.action.uploadAction">
<result name="success">/welcome.jsp</result>
</action>

Ⅳ 使用struts2 怎么实现 文件上传到另外一台电脑

传输文件的功能,类似于网络聊天程序。

肯定要用的文件传输用的IO流,还有网络通信用到的socket了。

可以在你部署struts2网站的服务器上面写一个网络通信程序(服务器端),对应的网络通信程序(客户端)放在“另外一台电脑”上面。

网站的服务器启动之后:
1。把那个网络通信程序(服务器端)启动

2。把“另外一台电脑”上面的网络通信程序(客户端)启动,现在两端就建立连接了。

3。可以通过服务器端向客户端发送数据。

以上过程跟我们平时用的聊天程序一样。

你可以在网上看看相应的网络聊天程序,现在网上这样的程序还是很多的。
里面实现了这样的机制。

Ⅵ struts2 如何实现上传整个文件夹的功能

一、压缩文件其实是可以0压缩率直接打包,这样其实蛮快的
二、看到网上说Applet可以上传文件夹,具体远离不清楚,你可以看看
三、最笨的方法,用Ajax做一个递归遍历文件夹的函数,如果是文件就上传上去,如果是文件夹就请求后台新建文件夹
四、用JSON格式把目录和文件封装起来,统一传到后台,但是后台处理要比较麻烦

Ⅶ struts2 文件的上传和下载,怎么控制上传的文件类型啊

<interceptor-ref name="fileUpload">
<param name="allowedTypes">application/octet-stream,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.ms-excel,application/msexcel</param>
<param name="maximumSize">10048576</param>
</interceptor-ref>
具体内容去struts教程网看看吧。

Ⅷ 使用struts2如何实现文件上传

  1. 新建Web Project,在WebRoot下新建upload文件夹

  2. 在WebRoot下新建upload.jsp,上传界面

  3. 编写上传成功、失败的提示界面。

  4. 在WebRoot下新建uploadError.jsp

  5. 在WebRoot下新建uploadSuccess.jsp

  6. 编写Action类

  7. 配置struts.xml文件,重置fileUpload拦截器。

  8. 测试,测试完成之后在tomcat下面webapps目录下找到项目对应的文件夹下的upload下查看

Ⅸ 【高分】如何使用STRUTS2实现文件动态下载

给你一个思路
在struts.xml中获取流file的方法是调用action里的InputStream getFile()方法。
那么其它的属性比如说
<param name="contentType">text/plain</param>
这里面的值你写成${type},那么在action里面就要提供获取的方法String getType()。
这时候这里写成<param name="contentType">${type}</param>。
至于如何动态生成这个type的值,你存入数据库的时候肯定存进去了的吧。
其它的文件名啊,contentDisposition都可以用这个方法动态赋给struts.xml。
试试吧

Ⅹ struts2 实现 下载整个文件夹

分析下,如果你要下载某个文件需要向服务器发送请求,然后会在客户端与服务器之间建立一个HTTP连接,服务器接收到你的请求后,向response中写入你要下载的内容,并且由于安全策略的原因,浏览器客户端每次下载文件都会弹出保存对话框。
也就是说,如果你要下载文件夹下的所有文件,你就需要对所有文件都发送请求,并且挨个选择保存位置。

如果要解决上面的问题,你可以按照下面的方式做。
1、建立一个servlet(structs2下应该是action吧),用来接收用户的请求。
2、根据用户的请求,将要下载的内容使用org.apache.tools.zip包下的类进行打包(JDK下也有相应的ZIP处理的类,不过它对于中文的文件名处理有问题)。
注:构造ZipOutputStream时使用HttpServletResponse.getOutputStream()构造。这样向ZipOutputStream中写入的内容,客户端就能直接获取。

以上,希望对你的帮助,可以的话,请采纳。

热点内容
ftp命令下载文件更新时间不变 发布:2024-10-13 08:15:48 浏览:132
为什么虚幻引擎无法编译该项目 发布:2024-10-13 08:11:04 浏览:593
我的世界mc脑洞君的服务器 发布:2024-10-13 07:40:25 浏览:304
怎么配置nfc门禁卡 发布:2024-10-13 07:38:53 浏览:47
微信加粉脚本 发布:2024-10-13 07:33:54 浏览:415
苹果手机卡怎么装到安卓机 发布:2024-10-13 07:33:53 浏览:575
linuxvarlog 发布:2024-10-13 07:33:19 浏览:846
安卓版98c哪里下载 发布:2024-10-13 07:12:31 浏览:121
安卓提醒怎么关闭不了 发布:2024-10-13 07:01:09 浏览:922
安卓怎么设置左滑返回上一级 发布:2024-10-13 06:29:26 浏览:277