response.setContentType(MIME)的做用是使客戶端瀏覽器,區分不一樣種類的數據,並根據不一樣的MIME調用瀏覽器內不一樣的程序嵌入模塊來處理相應的數據。
例如web瀏覽器就是經過MIME類型來判斷文件是GIF圖片。經過MIME類型來處理json字符串。
Tomcat的安裝目錄\conf\web.xml 中就定義了大量MIME類型 ,能夠參考。
response.setContentType("text/html; charset=utf-8"); html
.setContentType("text/plain; charset=utf-8"); 文本
text/javascript json數據
application/xml xml數據
這 個方法設置發送到客戶端的響應的內容類型,此時響應尚未提交。給出的內容類型能夠包括字符編碼說明,例 如:text/html;charset=UTF-8.若是該方法在getWriter()方法被調用以前調用,那麼響應的字符編碼將僅從給出的內容類型 中設置。該方法若是在getWriter()方法被調用以後或者在被提交以後調用,將不會設置響應的字符編碼,在使用http協議的狀況中,該方法設 置 Content-type實體報頭。
通常在Servlet中,習慣性的會首先設置請求以及響應的內容類型以及編碼方式:
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
response.setContentType()的String參數及對應類型
<option value="image/bmp">BMP</option>
<option value="image/gif">GIF</option>
<option value="image/jpeg">JPEG</option>
<option value="image/tiff">TIFF</option>
<option value="image/x-dcx">DCX</option>
<option value="image/x-pcx">PCX</option>
<option value="text/html">HTML</option>
<option value="text/plain">TXT</option>
<option value="text/xml">XML</option>
<option value="application/afp">AFP</option>
<option value="application/pdf">PDF</option>
<option value="application/rtf">RTF</option>
<option value="application/msword">MSWORD</option>
<option value="application/vnd.ms-excel">MSEXCEL</option>
<option value="application/vnd.ms-powerpoint">MSPOWERPOINT</option>
<option value="application/wordperfect5.1">WORDPERFECT</option>
<option value="application/vnd.lotus-wordpro">WORDPRO</option>
<option value="application/vnd.visio">VISIO</option>
<option value="application/vnd.framemaker">FRAMEMAKER</option>
<option value="application/vnd.lotus-1-2-3">LOTUS123</option>
MIME映射策略就是在網頁中使用哪一個應用程序(即插件),打開哪一種文件。另外還有使用權限問題。好比對PDF文檔,用「application/pdf 「策略。這在動態網頁中很常見。出現這種現象,有兩種情形:一是使用一個應用程序去打開它不能打開的文檔,好比用在標籤中定義「DWG」文檔用 「application/pdf 」,就會出現沒法打開的問題。二是文件擴展名符合要求,但文件內容(格式)不符合要求。你能夠檢查你瀏覽的網頁源代碼,得到出錯信息。檢查方法是:查看— 源文件。尋找相似於「application/pdf 「的字符串,就能夠看到,要打開的文件是否與應用程序匹配。 追問 若是不相匹配 如何解決回答 這一般是由網頁編寫人來更改。好比:你在源文件裏面找到你要打開的文件的HTML標籤,在裏面加上應用程序便可。好比,你要在網頁上打開一個PDF文檔, 找到PDF文檔那一行,在HTML標籤里加上 type=「application/pdf 「 就能夠了。好比如下HTML文件: <!----------測試MIME-----------><html> <head><title>測試MIME</title></head><body> <a type="application/pdf" href="test.pdf">測試MIME</a> </body> </html 將上面的代碼保存爲test.html,再在相同的位置存儲一個pdf文檔,雙擊它就會在網頁中打開該文檔。javascript