整合營銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          使用純HTML實現(xiàn)文件上傳

          一步,先寫html或jsp頁面,寫一個form,enctype設(shè)置為multipart/form-data,寫兩個input,一個type為file,一個type為submit,type的值可以用雙引號,也可不用。詳細(xì)代碼如下:<form action="uploadServlet" enctype="multipart/form-data">

          <input type="file" name="file">

          <input type="submit" value="上傳">

          </form>

          第二步,在web.xml中設(shè)置servlet和servlet mapping,并在servlet中設(shè)置multipart-config,設(shè)置允許上傳文件的最大長度,注意單位為字節(jié),樣例中約為10M和20M。

          第三步,在servlet中處理文件上傳,使用 request.getPart("file")方法獲取part,再通過part.getSubmittedFileName獲取上傳文件名,使用part.write方法寫文件到服務(wù)中,注意路徑問題,可以直接使用絕對路徑。

          對于linux中使用tomcat,可能還需要配置tomcat的servlet.xml中的UMASK="0022",修改前為0027。

          以上便是我分享的內(nèi)容,感謝您的閱讀,非常歡迎并期待您在評論區(qū)留下寶貴的意見和建議。如果你在處理數(shù)據(jù)時遇到了類似的問題,歡迎隨時私信我,我將竭誠為你提供幫助。同時,如果你對數(shù)據(jù)處理領(lǐng)域充滿熱情,也歡迎你與我私信交流,期待與你共同探討、學(xué)習(xí)和進(jìn)步,期待與您的每一次交流。

          ervlet開發(fā)步驟

          安裝服務(wù)器比如:tomcat

          1.創(chuàng)建WEB項目

          目錄:webapp/WEB-INF/web.xml

          2.導(dǎo)入jar包

          通過maven導(dǎo)入jar包,搜javaee

          或者使用服務(wù)器自帶的jar包,右鍵項目->target runtime->勾選tomcat

          3.創(chuàng)建Servlet

          實現(xiàn)Servlet接口

          也可以繼承HttpSevlet,此類已實現(xiàn)了Servlet接口

          實現(xiàn)/重寫service(),在此方法內(nèi)動態(tài)拼HTML

          4.注冊Servlet

          注冊Servlet,(找到web.xml文件)并聲明別名

          通過別名,給此Servlet注冊網(wǎng)名(以/開頭)

          <!-- 1.注冊別名(小名) -->

          <servlet>

          <servlet-name>time</servlet-name>

          <servlet-class>web.TimeServlet</servlet-class>

          </servlet>

          <!-- 2.注冊訪問路徑(網(wǎng)名) -->

          <servlet-mapping>

          <servlet-name>time</servlet-name>

          <url-pattern>/ts</url-pattern>

          </servlet-mapping>

          5.部署項目

          在Servers下選擇Tomcat,右鍵Add and Remove

          在彈出框內(nèi)左側(cè)選中項目,雙擊移動到右側(cè)

          部署:

          6.訪問Servlet

          啟動Tomcat

          瀏覽器輸入地址 http://ip:port/項目名/Servlet網(wǎng)名

          7.重新部署

          修改代碼后,需要重新部署并重啟Tomcat才有效

          或者點擊Servers下面的Tomcat7,右鍵publish

          可以手動關(guān)閉Tomcat,再啟動它

          也可以等待Eclipse自動重啟Tomcat(Reloading...)

          常見錯誤及解決方法:

          404產(chǎn)生的原因為Web服務(wù)器(容器)根據(jù)請求地址找不到對應(yīng)資源,以下情況都會出現(xiàn)404的錯誤提示:

          1.輸入的地址有誤(應(yīng)用名大小寫不正確,名稱拼寫不正確)

          2.在web.xml文件中<servlet>和<servlet-mapping>中的兩個<servlet-name>不一致

          3.沒有將工程部署到Tomcat的webapps下面

          4.Web工程部署時的結(jié)構(gòu)沒有遵循Servlet的規(guī)范

          具體的解決辦法就是根據(jù)上面提到的4種情況,逐條進(jìn)行檢查。

          容器如何找到service()方法

          首先容器會根據(jù)firstweb這個應(yīng)用名找到位于webapps下面對應(yīng)的文件夾,然后根據(jù)地址中的“/sayHi”到web.xml文件中尋找與之匹配的<url-pattern>節(jié)點,找到匹配的節(jié)點后會找到與該節(jié)點緊鄰的<servlet-name>節(jié)點,獲取名稱并在此尋找與該名稱相等的<servlet-name>節(jié)點,找到相等的節(jié)點后,搜尋該節(jié)點下面緊鄰的<servlet-class>節(jié)點,于是獲取到了與該地址相對應(yīng)的類名,借助于ClassLoader加載該類文件,創(chuàng)建對象并調(diào)用service()方法,客戶端即看到了與該地址匹配的運(yùn)行結(jié)果。

          405錯誤產(chǎn)生原因及解決方法

          405這個錯誤的產(chǎn)生原因是容器找不到service方法來處理請求。以下情況容器都將視為沒有找到service()方法

          1.service方法名寫錯,字母順序不對或大小寫錯誤

          2.service方法參數(shù)類型與標(biāo)準(zhǔn)不一致,或參數(shù)順序與標(biāo)準(zhǔn)不一致。一定是先HttpServletRequest,然后是HttpServletResponse類型

          3.service方法異常、返回值類型與標(biāo)準(zhǔn)不一致,一定是拋出ServletException、IOException。返回值類型是void。

          解決405錯誤的方法即檢查service方法是否存在,簽名(方法名、參數(shù)、返回值、異常類型)是否與覆蓋的父類中的方法一致。

          500錯誤產(chǎn)生原因及解決方法

          500的錯誤原因是請求的Servlet在執(zhí)行service方法的過程中出現(xiàn)了錯誤,程序不能繼續(xù)運(yùn)行了。以下情況容器都將視為500的一種情況,而返回給客戶端這個錯誤說明。

          1.Servlet沒有繼承HttpServlet或?qū)崿F(xiàn)Servlet接口

          2.web.xml文件中的<servlet-class>寫錯,與真正的包名類名不符

          3.service方法中的代碼運(yùn)行時拋出異常

          解決500的方法為依據(jù)上面三種情況依次進(jìn)行檢測,逐條排除。

          HTTP協(xié)議:

          HTTP協(xié)議是HyperText Transfer Protocol的縮寫,即超文本傳輸協(xié)議。是由w3c(萬維網(wǎng)聯(lián)盟)制定的一種應(yīng)用層協(xié)議,用來定義瀏覽器與web服務(wù)器之間如何通信以及通信的數(shù)據(jù)格式。

          因為BS架構(gòu)中的通信模塊就是以HTTP這個協(xié)議作為標(biāo)準(zhǔn)協(xié)議的,所以對該協(xié)議有所了解可以更好的編寫程序。

          HTTP協(xié)議的通信過程可以分為以下四個步驟:

          1.瀏覽器根據(jù)IP地址和端口號與服務(wù)器建立連接

          2.向Web服務(wù)器發(fā)送請求數(shù)據(jù)包

          3.Web服務(wù)器接收請求數(shù)據(jù)包后,發(fā)送相應(yīng)的響應(yīng)數(shù)據(jù)包

          4.瀏覽器接收響應(yīng)數(shù)據(jù)后關(guān)閉連接

          在這個過程中,一次請求對應(yīng)一次連接,當(dāng)瀏覽器再次發(fā)請求給服務(wù)器時,Web服務(wù)器并不知道這就是上次發(fā)請求的客戶端,這也是HTTP協(xié)議的一個特點-無狀態(tài)協(xié)議。這種需要時建立連接,使用結(jié)束后立即斷開連接的方式使得Web服務(wù)器可以利用有限的連接為盡可能多的客戶提供服務(wù)。也正是具備了這樣的特點,才使得BS結(jié)構(gòu)能夠承載企業(yè)級應(yīng)用的大量訪問。

          請求數(shù)據(jù)包組成

          請求數(shù)據(jù)包包含三個部分:

          請求行,包括請求方式,請求資源路徑,以及協(xié)議版本

          消息頭是由若干的鍵值對組成,主要用于傳遞給Web服務(wù)器一些信息。如,瀏覽器版本、接受資源的類型等

          在消息頭的下面會跟著一個空白行,這樣就可以區(qū)分出消息頭與實體內(nèi)容這兩個部分。而在請求數(shù)據(jù)包中,大部分情況實體內(nèi)容為空,只有當(dāng)請求方式為POST時,實體內(nèi)容才有要提交的表單數(shù)據(jù)

          響應(yīng)數(shù)據(jù)包組成

          響應(yīng)數(shù)據(jù)包也包含三個部分:

          狀態(tài)行,包括協(xié)議類型、版本、狀態(tài)碼、狀態(tài)描述

          消息頭(若干),也是多組鍵值對組成的信息說明。如返回的Content-Type消息頭可以告訴瀏覽器返回的結(jié)果數(shù)據(jù)類型和字符集

          實體內(nèi)容,位于消息頭下面的一個空白行之后。空白行意在通知瀏覽器消息頭的結(jié)束以及結(jié)果內(nèi)容的開始,瀏覽器就從這里開始數(shù)據(jù)的逐行解析。

          Servlet如何處理HTTP協(xié)議

          如何控制通信數(shù)據(jù)

          HTTP協(xié)議在Web容器這端主要表現(xiàn)為通信數(shù)據(jù)的到達(dá)以及響應(yīng)數(shù)據(jù)的返回。于是Web容器將這兩部分?jǐn)?shù)據(jù)解釋為兩個對象,一個是與請求數(shù)據(jù)對應(yīng)的HttpServletRequest對象,一個是與響應(yīng)數(shù)據(jù)對應(yīng)的HttpServletResponse對象。對于Servlet來講,主要的業(yè)務(wù)邏輯過程就是從請求對象中獲取數(shù)據(jù),經(jīng)過加工后將結(jié)果附著在響應(yīng)對象中發(fā)送回客戶端。

          HttpServletRequest對象用來讀取請求數(shù)據(jù);

          HttpServletResponse對象用來設(shè)置響應(yīng)數(shù)據(jù);

          前市面上有不少開源的CMS系統(tǒng),可以快速搭建一個網(wǎng)站,但是延展性、安全性、功能適配性肯定沒有按需求開發(fā)的性能好。所以下面主要介紹不使用開源CMS系統(tǒng)搭建網(wǎng)站的過程。

          1、網(wǎng)站定位

          在做網(wǎng)站之前首先要找好網(wǎng)站的定位,確定好網(wǎng)站要服務(wù)哪一部分人群、要足他們的什么需求以及網(wǎng)站的后期盈利方式等。

          2、網(wǎng)站策劃

          ·根據(jù)網(wǎng)站的定位確定一個符合網(wǎng)站定位的名字和域名,便于上線后的推廣。

          ·策劃網(wǎng)站的功能模塊以及頁面布局

          ·畫出頁面的原型圖

          3、頁面設(shè)計

          設(shè)計師根據(jù)原型圖,設(shè)計頁面,形成設(shè)計稿。

          4、前端開發(fā)工程師搭建靜態(tài)頁面

          搭建靜態(tài)頁面是指將設(shè)計的網(wǎng)頁效果圖轉(zhuǎn)換為能夠在瀏覽器瀏覽的頁面。這就需要對頁面設(shè)計規(guī)范有一個整體的認(rèn)識并掌握一些基本的網(wǎng)頁腳本語言,例如HTML、CSS等。需要注意的是,在拿到網(wǎng)頁設(shè)計效果圖后,切忌直接切圖、搭建結(jié)構(gòu)。應(yīng)該先仔細(xì)觀察效果圖,對頁面的配色和布局有一個整體的認(rèn)識,主要包括顏色、尺寸、輔助圖片等,具體介紹如下

          (1)顏色:觀察網(wǎng)頁效果圖的主題色、輔助色、點睛色,了解頁面的配色方案。

          (2)尺寸:觀察網(wǎng)頁效果圖的尺寸,確定頁面的寬度和模塊的分布。

          (3)輔助圖片:觀察網(wǎng)頁效果圖,看哪些地方使用了素材圖片。確定需要單獨保留的圖片。例如,重復(fù)的背景圖、小圖標(biāo)、文本內(nèi)容配圖等。

          對頁面效果圖有了一個基本的分析之后,就能夠“切圖”了。“切圖”就是對效果圖進(jìn)行分割,將無法用代碼實現(xiàn)的部分保存為圖片。當(dāng)切完圖之后,就可以使用HMCs搭建靜態(tài)頁面。搭建靜態(tài)頁面就是將效果圖轉(zhuǎn)換為瀏覽器能夠識別的標(biāo)記語言的過程。

          5、開發(fā)動態(tài)網(wǎng)站模塊

          靜態(tài)頁面建設(shè)完成后(一般和前端工程師工作并行),如果網(wǎng)站還需要具備一些動態(tài)功能(例如搜索功能、留言板、注冊登錄系統(tǒng)、新聞信息發(fā)布等),就需要開發(fā)動態(tài)功能模塊。目前廣泛應(yīng)用的動態(tài)網(wǎng)站技術(shù)主要有PHP、ASP、JSP三種,具體介紹如下。

          (1)PHP

          PHP即Hypertext Preprocessor(超文本預(yù)處理器),是一種通用的開源腳本語言。PHP語法吸收了C語言、Java(C語言和Java均是編程語言)的特點,利于學(xué)習(xí),使用廣泛,主要適用于web開發(fā)領(lǐng)域。PHP提供了標(biāo)準(zhǔn)的數(shù)據(jù)庫接口,數(shù)據(jù)庫連接方便,兼容性和展性非常強(qiáng),是目前使用較廣泛的技術(shù)。

          (2)ASP

          ASP即Active Server Pages(動態(tài)服務(wù)器頁面),是一種局限于微軟的操作系統(tǒng)平臺之上的動態(tài)網(wǎng)站開發(fā)技術(shù),主要工作環(huán)境為微軟的IIS應(yīng)用程序結(jié)構(gòu)。ASP入門比較簡單,但是安全性較低,而且不宜構(gòu)架大中型站點,其升級版ASP.NET雖然解決了這一問題,但開放程度低,操作麻煩。

          (3)JSP

          JSP即Java Server Pages(Java服務(wù)器頁面),是基于Java Servlet以及整個Java體系的Web開發(fā)技術(shù),它與ASP有一定的相似之處。JSP被認(rèn)為是網(wǎng)站建設(shè)技術(shù)中安全性最好的,雖然學(xué)習(xí)和操作均較為復(fù)雜,但目前被認(rèn)為是三種動態(tài)網(wǎng)站技術(shù)中有前途的技術(shù)。

          6、網(wǎng)站建設(shè)后期事宜

          網(wǎng)站建設(shè)后期事宜主要包括網(wǎng)站的測試、上傳、推廣、維護(hù)等,具體介紹如下。

          (1)網(wǎng)站測試

          網(wǎng)站測試主要包括本地測試和上傳到服務(wù)器之后的網(wǎng)絡(luò)測試,具體介紹如下

          ·本地測試:是指在網(wǎng)站搭建完成之后的一系列測試。例如,鏈接是否錯亂,是否兼容不同的瀏覽器,頁面功能邏輯是否正常等,以確保網(wǎng)站發(fā)布到服務(wù)器上不會出現(xiàn)些基本錯誤。

          ·網(wǎng)絡(luò)測試:是指網(wǎng)站上傳到服務(wù)器之后針對網(wǎng)站的各項性能情況的一項檢測工作。例如,網(wǎng)頁打開速度的測試,網(wǎng)站安全的測試(服務(wù)器安全、腳本安全)等。

          (2)網(wǎng)站上傳

          網(wǎng)頁制作完成后,最終要上傳到Web服務(wù)器上,網(wǎng)頁才具備訪問功能。在網(wǎng)頁上傳之前首先要申請域名和購買空間(免費(fèi)空間不用購買),然后使用相應(yīng)的工具上傳即可。上傳網(wǎng)站的工具有很多,可以運(yùn)用FTP軟件上傳(例如Flash FXP),也可運(yùn)用Dreamweaver自帶的站點管理上傳文件。

          (3)網(wǎng)站推廣

          當(dāng)網(wǎng)站上傳發(fā)布后,還要不斷對其進(jìn)行推廣宣傳,以提高網(wǎng)站的訪問率和知名度。推廣網(wǎng)站的方法有很多,例如,到搜索引擎上注冊、與其他網(wǎng)站交換鏈接、加入廣告鏈接等。

          (4) 網(wǎng)站維護(hù)

          網(wǎng)站只有經(jīng)常注意更新與維護(hù)保持內(nèi)容的新鮮感,才能持續(xù)吸引訪問者。網(wǎng)站維護(hù)階段的主要工作是更新網(wǎng)站內(nèi)容、確保網(wǎng)站的正常運(yùn)行以及歷史文件的歸類等。


          主站蜘蛛池模板: 精品人妻少妇一区二区| 精品久久久久一区二区三区 | 一区二区三区视频网站| 久久综合一区二区无码| 中文字幕AV一区二区三区 | 中文字幕日韩一区二区三区不卡| 国产伦精品一区二区三区在线观看| 国产suv精品一区二区33| 精品中文字幕一区在线| 亚洲中文字幕久久久一区| 国产精品丝袜一区二区三区| 一区二区三区在线播放| 春暖花开亚洲性无区一区二区| 秋霞无码一区二区| 亚洲乱码一区二区三区在线观看| 精品在线一区二区| 成人无号精品一区二区三区| 亚洲午夜在线一区| 色欲AV蜜臀一区二区三区| 国产免费一区二区三区不卡| 亚洲国产高清在线一区二区三区| 亚洲熟女综合色一区二区三区| 亚洲电影一区二区三区| 国产无套精品一区二区 | 国产福利视频一区二区 | 在线|一区二区三区四区| 无码人妻精品一区二区三区东京热 | 亚洲爆乳无码一区二区三区| 精品国产日韩亚洲一区| 日本一区二区三区四区视频| 国精产品一区一区三区MBA下载| 国产福利微拍精品一区二区| 亚洲国产精品综合一区在线| 久久国产免费一区| 国产精品无码一区二区三级| 国产剧情国产精品一区| 国产综合一区二区| 一区二区三区观看免费中文视频在线播放 | 久久久久一区二区三区| 岛国无码av不卡一区二区| 中文字幕在线观看一区二区|