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文档,双击它就会在网页中打开该文档。

response.setContentType设置的更多相关文章

  1. response.setContentType与 request.setCharacterEncoding 区别

    1.request.setCharacterEncoding()是设置从request中取得的值或从数据库中取出的值的编码 2.response.setContentType指定 HTTP 响应的编码 ...

  2. response.setContentType 与response.setCharacterEncoding

    response.setContentType  设置发送到客户端的响应的内容类型,可以包括字符编码说明.  也就是说在服务器端坐了这个设置,那么他将在浏览器端起到作用,在你打开浏览器时决定编码方式 ...

  3. response.setContentType()的作用及参数

    package com.java1234.util; import java.io.PrintWriter; import javax.servlet.http.HttpServletResponse ...

  4. response.setContentType()的String参数及对应类型(转)

    response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据. 例如web浏览器就是通过MI ...

  5. 对于response.setContentType(MIME)的解释

    response.setContentType(MIME)的作用是使客户端浏览器,区分不同种类的数据,并根据不同的MIME调用浏览器内不同的程序嵌入模块来处理相应的数据.例如web浏览器就是通过MIM ...

  6. response.setContentType("text/html;charset=utf-8")后依然乱码的解决方法

    从浏览器获取数据到服务器,服务器将得到数据再显示在浏览器上英文字母正常显示,中文字符乱码的问题,已经使用了 response.setContentType("text/html;charse ...

  7. JSP response.setCharacterEncoding与response.setContentType的区别

    问题描述 昨天在参考别人的项目时,发现页面引用js,css等文件总是乱码,后来才发现是MIME类型统一设置为text/html,并且仅仅编码设置了浏览器端的解析编码.另外,可以先通过文本编辑器(如no ...

  8. response.setContentType()的参数说明

    response.setContentType()的参数说明 <meta http-equiv="Content-Type" content="text/html; ...

  9. response.setContentType()的String参数及对应类型

    response.addHeader("Content-Disposition", "attachment;filename="+ filename); res ...

随机推荐

  1. Ajax提交后台中文乱码问题

    今天项目组同事反映,之前有一个正常的请求,今天突然后台获取参数的值出现了中文乱码,怀疑是之前更新jar包所致,笔者仔细想了想更新的内容,仿佛没有涉及到编码的变更啊,然后开始排查,首先后台加了强制以ut ...

  2. centos install zookeeper cluster

    1.apache官方下载, 2.新版本需要jdk环境,然后配置好jdk环境 3.解压zookeeper,进入解压后的conf,新建zoo.cfg (删掉自带的cfg)内容如下 tickTime=200 ...

  3. JS验证只允许输入数字

    1.文本框只能输入数字代码(小数点也不能输入)<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafter ...

  4. Python中的属性管理

    Python管 理属性的方法一般有三种:操作符重载(即,__getattr__.__setattr__.__delattr__和 __getattribute__,有点类似于C++中的重载操作符).p ...

  5. Android课程---课下练习(表格、线性和相对布局)

    1.表格布局 练习代码: <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns: ...

  6. Python的时间模块小结(转自:不懂真人)

    import datetimeprint time.time() #时间戳 print time.localtime(time.time()) #时间元组 print time.strftime('% ...

  7. 【iCore3 双核心板】例程十三:SDIO实验——读取SD卡信息

    实验指导书及代码包下载: http://pan.baidu.com/s/1hqM787E iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  8. hover事件优化(延时操作)

    JQ的hover事件拓展 编写原因:当鼠标滑过某个带有hover事件的元素,但是仅仅是路过,并不是希望查看此部分内容的时候,效果不理想 $.fn.extend({ delayed : function ...

  9. ExtJS笔记 Tree

    The Tree Panel Component is one of the most versatile Components in Ext JS and is an excellent tool ...

  10. Decimal To Fraction 小数转换成分数

    以0.25为例, 0.25 * 100 = 25, 求25 和 100 的最大公约数gcd. 25/gcd 为分子. 100/gcd为分母. //小数转分数 //0.3 -> 3/10, 0.2 ...