javaweb批量上傳文件
1. javaWeb如何實現想QQ空間圖片預覽的效果以及圖片批量上傳最好有實例
1:點擊自定義。
2:點擊右側的新建模塊→點擊圖片模塊。
3:模塊名稱隨便,用一個空格最好,圖片地址上輸入圖片的地址,再點擊「更多設置」,只設置圖片的寬高度(以圖片的大小而定)就可以了,背景、邊框選擇無,確定保存。
4:用滑鼠調整一下圖片的大小,讓整個圖片完全顯示。
5:接著點擊模塊管理→把「互動」以上的模塊前面的√全部去掉,然後再把需要顯示的模塊打√,這樣「日誌」、「留言」、「個人形象」或「音樂收藏」就顯示在大圖模塊的上面了。確定保存。OK。
2. java web 中 如何在上傳文件前讀取文件屬性(如文件類型,文件大小等)如何實現文件的批量上傳大神們
jsp頁面: <input type="file" name="upload" /> action: // 獲取文件類型和文件名,後綴必須為ContentType 和FileName private String[] uploadContentType; private String[] uploadFileName; set...get...
3. 如何快速去了解一個Javaweb項目
1.從代碼結構入手,搞清楚Java源碼所在目錄以及jsp代碼所在目錄。x0dx0a2.從Web.xml入手,搞清楚首頁,上下文及配置情況。x0dx0a3.從lib目錄里初步查看系統使用的框架和工具包。x0dx0a4.從頁面大體瀏覽,看頁面的scriptlet使用的主要語言。x0dx0a5.從代碼包結構初步知曉代碼的層次。x0dx0a6.從配置文件入手,弄清楚頁面到Action/Servlet的配置關系。x0dx0a7.搞清楚代碼提交的方式,前台請求如何傳遞到後台,又是如何返回到前台頁面的,這里以Login頁面為最佳切入點。x0dx0a8.從處理Login的Action/Servlet中觀察,看在session中記錄了多少重要的數據,後面程序又是怎樣用到這些數據的。x0dx0a9.如果存在樹形菜單,要搞清楚樹形菜單的形成及傳遞請求的方式。x0dx0a10.歸納幾種典型頁面,搞清楚其處理和響應形式。x0dx0a11.歸納通用的頁面組件如分頁,上傳下載,非同步請求等原系統是如何處理的。x0dx0a12.搞清楚後台數據來源及配置,主要是資料庫及通過WebService方式。x0dx0a13.歸納後台處理的主要業務。x0dx0a14.可能的話,把後台數據表的ER圖畫出來。x0dx0a15.典型業務的流程圖可以繪制出來。
4. 簡單粗暴,詳細得不要不要的 JavaWeb快速入門
1. 實驗環境准備
(假設你已經裝好了jdk,如果不會安裝jdk,請參考這篇文章)
1.1 安裝一個eclipse或者MyEclipse(本文以eclipse為例),其實所謂的安裝就是網上去下載一個eclipse,然後解壓一下就好了。
1.2安裝tomcat,網上下載一個,然後解壓一下。我這次使用的tomcat容器配的是8080埠。
1.3 將tomcat配置到eclipse中。具體步驟為:Window -- Preferences -- Server -- Runtime Environment -- Add 將tomcat解壓後的路徑配置上去就行了。
本文假設讀者已經對tomcat,eclipse有一定的了解。
2. 新建web項目
首先,一言不合就打開eclipse
Paste_Image.png
我們新建一個項目,File -- new -- Dynamic Web Project。
項目名稱是web,點擊Next
Paste_Image.png
Paste_Image.png
build\classes是默認的編譯目錄,還是點擊Next
Paste_Image.png
好的,最後點擊Finish,一個web項目就建立好了。
目錄結構
Paste_Image.png
2.啥叫JavaWeb項目,它能幹嘛?
JavaWeb項目就是一個應用程序,你不要以為它有多麼神秘。你每天打開的QQ就一個應用程序,你在手機上打開的微信,網路地圖等等,這些都是應用程序。
不同的是,QQ是一個本地客戶端程序,它需要你在自己的電腦上安裝一個客戶端,然後你打開QQ,可以登錄,聊天。
QQ肯定也分客戶端和服務端,我們電腦上裝的就是客戶端,你要知道的一點是,我們發送消息,發送到哪裡去了呢?
沒錯,肯定是發送到QQ的伺服器上了,那裡保存著我們的所有數據。
想想也不可能在本地,因為我們在電腦上發送的消息,在手機QQ上不是也能看到嗎?這就說明,肯定是上傳到它的伺服器然後保存下來了。
而Web項目是什麼呢?
它也是一個應用程序,只不過它的客戶端是運行在瀏覽器上的。
我們打開瀏覽器,訪問一個地址,比如 http://www.jianshu.com/
這個就是我們的訪問路徑,我們通過這個URL向簡書的伺服器提交請求,然後伺服器進行處理,給你回應。
接下來,我們就看到出來一個網頁。
我們在這個網頁上可以寫文章,點贊,收藏,等等。
我們的每一步操作,其實都和伺服器做了一個交互。
比如一個登錄功能,當我們滑鼠點擊那個登錄按鈕,瀏覽器就向伺服器提交了一個請求,伺服器進行處理,然後操作資料庫。最終,它會得出一個結果,就是說,到底能不能讓你登錄,總會有個說法。
如果你密碼寫錯了,它可能就會得出一個用戶名或密碼錯誤的結論。然後,這個信息會從伺服器返回到前台,前台就是瀏覽器。
所謂的前台就是你的瀏覽器,沒什麼神秘的。
前台接受到後台傳過來的信息後,進行一些處理,然後給你個提示,比如,告訴你用戶名或密碼錯誤。
這就是一個完整的交互過程。
現在隨著網速越來越好,瀏覽器的性能越來越強大,我想web肯定是未來的大趨勢。畢竟,誰都不希望在電腦上安裝一大堆客戶端吧。
只用一個瀏覽器多好。
有了web,我只需要有一個瀏覽器,然後就能通過互聯網獲取我想要的資源了。這樣不是很美妙嗎?
近幾年H5非常流行,尤其是移動端,因為手機瀏覽器基本上都支持css3。一樣的道理,我們肯定也不希望在手機上安裝一大堆應用,卡都卡死了,如果能直接訪問一個網頁,就能獲得我想要的服務就好了。
而且現在WIFI也普遍了,如果以後流量能沒有限制,那麼APP的熱度很可能會逐漸被web取代。
當然,現在是不太可能的,畢竟訪問網頁要流量啊,而我在手機上安裝了APP,就好像電腦的QQ一樣,大部分資源文件就在我本地,我不需要每次都去聯網下載。比如圖片,app就沒事,因為就在本地,可是如果用web,我每次訪問那個網頁,就需要把圖片重新下載一遍。這樣不是很浪費流量嗎?
3. 手工搭建web項目
現在,為了說明伺服器和web項目的概念,我們先不用eclipse,來手工搭建一個web項目。
伺服器,正常情況下就是一台配置高一點的電腦,除非是那種大型的專用伺服器。
一般來說,所謂的伺服器,就是電腦。
比如我現在有一台電腦,給他裝了一個linux系統或者windos系統,然後我說,好了,從今以後,這就是伺服器了。現在伺服器一般都是用linux系統的。
那麼tomcat又是什麼?
tomcat其實也是一個應用程序,你網上下載的tomcat往往是一個壓縮包,然後我們解壓以後就相當於安裝好了。
可以這么理解:
伺服器就是一台電腦,而tomcat是一個容器,專門存放web項目的容器。
以下我都將tomcat稱為tomcat容器。
我們看到在tomcat容器根目錄下,有一個webapps文件夾
裡面是這樣的:
Paste_Image.png
好的,現在我要發布一個項目了,我只需要把一個已經做好的web項目往裡面一丟就行了。
除了webapps,我們還發現一個bin目錄。一般來說,可執行的文件都放在bin目錄下。
Paste_Image.png
打開bin,找到一個startup.bat文件。這就是啟動tomcat的東西,雙擊它,tomcat就被啟動了。
然後,瀏覽器可以訪問tomcat裡面的項目。
現在我們來手工搭建一個web項目,首先,在webapps目錄下新建一個文件夾,是的,就是文件夾,不管你項目是什麼,肯定還是放在文件夾裡面的。
Paste_Image.png
項目名稱就叫做webapp。
打開webapp,根據web項目的規范,我們需要有一個WEB-INF文件夾。
Paste_Image.png
然後,在WEB-INF文件夾裡面,必須要有一個web.xml文件。
xml文件,就是一個描述性的文件,我現在的觀點如下:
XML = JavaBean = Json = HashMap
它無非就是描述一些東西,保存一些數據而已。
好的,我們在裡面新建一個web.xml。這個文件非常重要,正因為它的存在,tomcat容器才會知道這個文件夾裡面竟然是一個web項目。
否則,tomcat容器是不知道這個web項目的,它只會將myapp文件夾看做是一個文件夾而已。
Paste_Image.png
我們用記事本打開web.xml,將以下代碼拷貝進去。
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<display-name>web</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
<?xml version="1.0" encoding="UTF-8"?>表示這是一個1.0版本的XML文件,編碼為UTF-8。
<web-app></web-app>就是這個XML文件的一個根節點,就是告訴你,我這個xml文件裡面,有一個東西叫做web-app。
XML的一個作用就是配置文件,web.xml本身就是一個配置文件。在web項目中,我們應用xml最多的也就是配置一些參數。
配置參數,就是給屬性賦值嘛,沒什麼神秘的。
包括我們學習JavaSE,歸根到底,一直在做的一件事就是new對象,然後調用方法,調用方法的目的一方面是做一些事情,另一方面不還是給屬性賦值嘛。
你可以把web.xml看做是一個java類,類名叫做 webApp。它裡面有兩個屬性,分別是display-name和welcome-file-list。
display-name是發布名稱,也就是項目的名字。
welcome-file-list 是歡迎頁面,就是說,當你在瀏覽器直接訪問這個myapp項目,默認跳轉的頁面。
想像一下,應該會變得非常好理解。
5. java web開發 jsp頁面中的《input type="file"》如何一次選擇多個文件
一個標簽只能選擇一個文件,這東西做不到你說的功能
批量上傳有flash控制項用,或者你自己多寫幾個input標簽
6. java web中利用jsp和servlet怎麼實現excel文件的導入(導入保存在資料庫中)不用太復雜的,拜託啦
上傳文件
按行,讀取文件
每行數據裝入對應實體
實體入list
list批量存入資料庫
每一步具體哪個需要解釋?或者自己能查到么?按步做唄...
7. javaWEB項目中如何實現批量選擇文件並上傳呢有什麼好的插件,最好有相關代碼例子
jquery.uploadify批量上傳控制項
[html]
<linkhref="styles/uploadify.css"rel="stylesheet"type="text/css"/>
<scripttype="text/javascript"src="styles/uploadify.swf"></script>
<scripttype="text/javascript"src="javascripts/jquery.uploadify.min.js"></script>
<linkhref="styles/uploadify.css"rel="stylesheet"type="text/css"/>
<scripttype="text/javascript"src="styles/uploadify.swf"></script>
<scripttype="text/javascript"src="javascripts/jquery.uploadify.min.js"></script>還有jquery.js,你懂得!
這里注意哦,css文件會引用到這個圖片哦,所以請你指定這個圖片的位置哦,不然就沒有顯示這個叉叉哦,這個叉叉是刪除按鈕的哦,沒有就是空白哦!
[javascript]
<script>
functionsnedUpLoad(){
varpid=$("#entityId").val();//這個是我自己獲取的自定義參數
varentityName=$("#entityName").val();//同上
$("#uploadify").uploadify({//初始化uploadifyuploadify是input的id
//'debug':false,//bug模式,默認是false
'auto':false,//自動上傳,就是控制項自動上傳,默認是true
'multi':true,
//'successTimeout':99999,//超時時間
'formData':{'pid':pid,'entityName':entityName},//我的參數列表
//'fileObjName':'uploadify',//伺服器的屬性名字
'uploader':'你的後台url地址;jsessionid=${pageContext.session.id}',//提交伺服器路徑,這里
說明下;jsessionid=${pageContext.session.id},這個是用於非IE內核的瀏覽器兼容的
'swf':"styles/uploadify.swf",//flash文件,官方的文件,引用上就是了
//'uploader':'/Home/Upload',//文件保存路徑用處不大
'buttonText':'文件上傳',//按鈕
//'height':'32',//瀏覽按鈕的高度
//'width':'100',//瀏覽按鈕的寬度
'fileTypeDesc':'支持的格式:',//在瀏覽窗口底部的文件類型下拉菜單中顯示的文本
'fileTypeExts':'*.jpg;*.jpge;*.gif;*.png',//允許上傳的文件後綴
'fileSizeLimit':'3MB',//上傳文件的大小限制
'queueSizeLimit':25,//上傳數量
'onSelectError':function(file,errorCode,errorMsg){//返回一個錯誤,選擇文件的時候觸發
switch(errorCode){
case-100:
alert("上傳的文件數量已經超出系統限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"個文件!");
break;
case-110:
alert("文件["+file.name+"]大小超出系統限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!");
break;
case-120:
alert("文件["+file.name+"]大小異常!");
break;
case-130:
alert("文件["+file.name+"]類型不正確!");
break;
}
},
'onFallback':function(){//檢測FLASH失敗調用
alert("您未安裝FLASH控制項,無法上傳圖片!請安裝FLASH控制項後再試。");
},
'onUploadSuccess':function(file,data,response){//上傳到伺服器,伺服器返回相應信息到data里
if(data){
vardataObj=eval("("+data+")");//轉換為json對象
//$('#uploadify').uploadify('upload')
}
}
});
}
</script>
<script>
functionsnedUpLoad(){
varpid=$("#entityId").val();//這個是我自己獲取的自定義參數
varentityName=$("#entityName").val();//同上
$("#uploadify").uploadify({//初始化uploadifyuploadify是input的id
//'debug':false,//bug模式,默認是false
'auto':false,//自動上傳,就是控制項自動上傳,默認是true
'multi':true,
//'successTimeout':99999,//超時時間
'formData':{'pid':pid,'entityName':entityName},//我的參數列表
//'fileObjName':'uploadify',//伺服器的屬性名字
'uploader':'你的後台url地址;jsessionid=${pageContext.session.id}',//提交伺服器路徑,這里
說明下;jsessionid=${pageContext.session.id},這個是用於非IE內核的瀏覽器兼容的
'swf':"styles/uploadify.swf",//flash文件,官方的文件,引用上就是了
//'uploader':'/Home/Upload',//文件保存路徑用處不大
'buttonText':'文件上傳',//按鈕
//'height':'32',//瀏覽按鈕的高度
//'width':'100',//瀏覽按鈕的寬度
'fileTypeDesc':'支持的格式:',//在瀏覽窗口底部的文件類型下拉菜單中顯示的文本
'fileTypeExts':'*.jpg;*.jpge;*.gif;*.png',//允許上傳的文件後綴
'fileSizeLimit':'3MB',//上傳文件的大小限制
'queueSizeLimit':25,//上傳數量
'onSelectError':function(file,errorCode,errorMsg){//返回一個錯誤,選擇文件的時候觸發
switch(errorCode){
case-100:
alert("上傳的文件數量已經超出系統限制的"+$('#file_upload').uploadify('settings','queueSizeLimit')+"個文件!");
break;
case-110:
alert("文件["+file.name+"]大小超出系統限制的"+$('#file_upload').uploadify('settings','fileSizeLimit')+"大小!");
break;
case-120:
alert("文件["+file.name+"]大小異常!");
break;
case-130:
alert("文件["+file.name+"]類型不正確!");
break;
}
},
'onFallback':function(){//檢測FLASH失敗調用
alert("您未安裝FLASH控制項,無法上傳圖片!請安裝FLASH控制項後再試。");
},
'onUploadSuccess':function(file,data,response){//上傳到伺服器,伺服器返回相應信息到data里
if(data){
vardataObj=eval("("+data+")");//轉換為json對象
//$('#uploadify').uploadify('upload')
}
}
});
}
</script>
[javascript]
$(function(){
snedUpLoad();//jquery容器載入完運行我們的函數
})
$(function(){
snedUpLoad();//jquery容器載入完運行我們的函數
})
[html]
<inputtype="file"name="uploadify"id="uploadify"/>//申明控制項的容器
<inputtype="file"name="uploadify"id="uploadify"/>//申明控制項的容器
前台頁面代碼基本就這樣了,很好明白,至於後台邏輯和普通上傳處理一致的,這里就不列出來的,最後上一張圖給大家鑒賞一下
(tip:其實他的批量上傳並不是一次全部提交處理的,他是一個一個依次提交,相當是一個for循環,所以後台處理的同時只是一個文件上傳,即排序的處理上傳文件,就和單個文件上傳的代碼一樣,如果你早有後台的單文件上傳代碼就不用改,直接調用就行了,可以共用)
8. java web 的表單提交與傳值
你貼的代碼沒有錯,但你的數據類型轉化錯的,應該是在你別的類上,。你到InsertoneAction調用的JAVABEAN里去找找,有沒有像這樣轉化為整型的的:如int str_ty= Integer.parseInt(str_ty);如果有那就是從那裡報的錯了,因為如果從面頁獲取的值為空字元串,那麼報出的異常就是:For input string: "str_ty"。修改的時候,要判空再轉化就OK了。
9. Java 批量大文件上傳下載如何實現
解決這種大文件上傳不太可能用web上傳的方式,只有自己開發插件或是當門客戶端上傳,或者用現有的ftp等。
1)開發一個web插件。用於上傳文件。
2)開發一個FTP工具,不用web上傳。
3)用現有的FTP工具。
下面是幾款不錯的插件,你可以試試:
1)Jquery的uploadify插件。具體使用。你可以看幫助文檔。
10. 想要系統學習java到底要學習哪些知識
一、java基礎
學習任何一門編程語言,首先要學習的是基礎語法,開啟Java學習的第一步,當然就是深入掌握計算機基礎、編程基礎語法,面向對象,集合、IO流、線程、並發、異常及網路編程,這些我們稱之為JavaSE基礎。當你掌握了這些內容之後,你就可以做出諸如:電腦上安裝的迅雷下載軟體、QQ聊天客戶端、考勤管理系統等桌面端軟體。
java學習路線大陸傳送門