當前位置:首頁 » 文件管理 » 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中寫入的內容,客戶端就能直接獲取。

以上,希望對你的幫助,可以的話,請採納。

熱點內容
網路課程腳本 發布:2024-10-13 10:24:56 瀏覽:501
網上買電腦如何查看配置 發布:2024-10-13 10:17:29 瀏覽:794
遺傳演算法非線性約束 發布:2024-10-13 10:09:16 瀏覽:779
圖像扭曲的演算法 發布:2024-10-13 09:56:11 瀏覽:234
c語言的精髓 發布:2024-10-13 09:56:09 瀏覽:814
嵌入式系統高級c語言編程 發布:2024-10-13 09:16:26 瀏覽:87
天刀與伺服器斷開是什麼鬼 發布:2024-10-13 09:12:12 瀏覽:72
python金融量化 發布:2024-10-13 09:12:11 瀏覽:84
搭建hive需要什麼伺服器 發布:2024-10-13 09:07:16 瀏覽:399
c靜態成員函數的訪問 發布:2024-10-13 09:03:08 瀏覽:529