在JSP的下载文件中,如果文件是rar类型的,一点击下载rar文件就直接打开,并且出现乱码,右键另存为浏览器也是默认为html格式,一直以为是浏览器IE的问题,后来发现其实不关浏览器的问题,而是web.xml配置的问题,具体如下:
web.xml文件中配置<mime-mapping>下载文件类型
TOMCAT在默认情况下下载.rar的文件是把文件当作text打开,以至于IE打开RAR文件为乱码,如果遇到这种情况解决方法:
打开conf/web.xml,加入下面的代码.

<mime-mapping>

<extension>doc</extension>

<mime-type>application/msword</mime-type>

</mime-mapping>

<mime-mapping>

<extension>xls</extension>

<mime-type>application/msexcel</mime-type>

</mime-mapping>

<mime-mapping>

<extension>pdf</extension>

<mime-type>application/pdf</mime-type>

</mime-mapping>

<mime-mapping>

<extension>zip</extension>

<mime-type>application/zip</mime-type>

</mime-mapping>

<mime-mapping>

<extension>rar</extension>

<mime-type>application/rar</mime-type>

</mime-mapping>

<mime-mapping>

<extension>txt</extension>

<mime-type>application/txt</mime-type>

</mime-mapping>

<mime-mapping>

<extension>chm</extension>

<mime-type>application/mshelp</mime-type>

</mime-mapping>

<mime-mapping>

<extension>mp3</extension>

<mime-type>audio/x-mpeg</mime-type>

</mime-mapping>
重启TOMCAT,清除IE缓存,再打开RAR的文件时就可以正常下载了.
不同的ContentType 会影响客户端所看到的效果.
默认的ContentType为 text/html 也就是juapk.com网页格式.
代码如:

<% response.ContentType ="text/html" %>

<!--#i nclude virtual="/ContentType.html" -->
显示的为网页,而

<% response.ContentType ="text/plain" %>

<!--#i nclude virtual="/sscript/ContentType.html" -->
则会显示html原代码.
以下为一些常用的 ContentType

GIF images

<% response.ContentType ="image/gif" %>

<!--#i nclude virtual="/myimage.gif" -->

JPEG images

<% response.ContentType ="image/jpeg" %>

<!--#i nclude virtual="/myimage.jpeg" -->

TIFF images

<% response.ContentType ="image/tiff" %>

<!--#i nclude virtual="/myimage.tiff" -->

MICROSOFT WORD document

<% response.ContentType ="application/msword" %>

<!--#i nclude virtual="/myfile.doc" -->

RTF document

<% response.ContentType ="application/rtf" %>

<!--#i nclude virtual="/myfile.rtf" -->

MICROSOFT EXCEL document

<% response.ContentType ="application/x-excel" %>

<!--#i nclude virtual="/myfile.xls" -->

MICROSOFT POWERPOINT document

<% response.ContentType ="application/ms-powerpoint" %>

<!--#i nclude virtual="/myfile.pff" -->

PDF document

<% response.ContentType ="application/pdf" %>

<!--#i nclude virtual="/myfile.pdf" -->

ZIP document

<% response.ContentType ="application/zip" %>

<!--#i nclude virtual="/myfile.zip" -->
下面是更详细的ContentType

application/andrew-inset ez

application/mac-binhex40 hqx

application/mac-compactpro cpt

application/mathml+xml mathml

application/msword doc

application/octet-stream bin dms lha lzh exe
class so dll

application/oda oda

application/ogg ogg

application/pdf pdf

application/postscript ai eps ps

application/rdf+xml rdf

application/smil smi smil

application/srgs gram

application/srgs+xml grxml

application/vnd.mif mif

application/vnd.mozilla.xul+xml xul

application/vnd.ms-excel xls

application/vnd.ms-powerpoint ppt

application/vnd.wap.wbxml wbxml

application/vnd.wap.wmlc .wmlc wmlc

application/vnd.wap.wmlscriptc .wmlsc wmlsc

application/voicexml+xml vxml

application/x-bcpio bcpio

application/x-cdlink vcd

application/x-chess-pgn pgn

application/x-cpio cpio

application/x-csh csh

application/x-director dcr dir dxr

application/x-dvi dvi

application/x-futuresplash spl

application/x-gtar gtar

application/x-hdf hdf

application/x-httpd-php .php .php4 .php3 .phtml

application/x-httpd-php-source .phps

application/x-javascript js

application/x-koan skp skd skt skm

application/x-latex latex

application/x-netcdf nc cdf

application/x-pkcs7-crl .crl

application/x-sh sh

application/x-shar shar

application/x-shockwave-flash swf

application/x-stuffit sit

application/x-sv4cpio sv4cpio

application/x-sv4crc sv4crc

application/x-tar .tgz tar

application/x-tcl tcl

application/x-tex tex

application/x-texinfo texinfo texi

application/x-troff t tr roff

application/x-troff-man man

application/x-troff-me me

application/x-troff-ms ms

application/x-ustar ustar

application/x-wais-source src

application/x-x509-ca-cert .crt

application/xhtml+xml xhtml xht

application/xml xml xsl

application/xml-dtd dtd

application/xslt+xml xslt

application/zip zip

audio/basic au snd

audio/midi mid midi kar

audio/mpeg mpga mp2 mp3

audio/x-aiff aif aiff aifc

audio/x-mpegurl m3u

audio/x-pn-realaudio ram rm

audio/x-pn-realaudio-plugin rpm

audio/x-realaudio ra

audio/x-wav wav

chemical/x-pdb pdb

chemical/x-xyz xyz

image/bmp bmp

image/cgm cgm

image/gif gif

image/ief ief

image/jpeg jpeg jpg jpe

image/png png

image/svg+xml svg

image/tiff tiff tif

image/vnd.djvu djvu djv

image/vnd.wap.wbmp .wbmp wbmp

image/x-cmu-raster ras

image/x-icon ico

image/x-portable-anymap pnm

image/x-portable-bitmap pbm

image/x-portable-graymap pgm

image/x-portable-pixmap ppm

image/x-rgb rgb

image/x-xbitmap xbm

image/x-xpixmap xpm

image/x-xwindowdump xwd

model/iges igs iges

model/mesh msh mesh silo

model/vrml wrl vrml

text/calendar ics ifb

text/css css

text/html .shtml html htm

text/plain asc txt

text/richtext rtx

text/rtf rtf

text/sgml sgml sgm

text/tab-separated-values tsv

text/vnd.wap.wml .wml wml

text/vnd.wap.wmlscript .wmls wmls

text/x-setext etx

video/mpeg mpeg mpg mpe

video/quicktime qt mov

video/vnd.mpegurl mxu

video/x-msvideo avi

video/x-sgi-movie movie

x-conference/x-cooltalk ice