两分钟带你了解java中的MIME类型

MIME类型

在我们学习servlet的过程中,我们经常会遇到这样的代码resp.setContentType("text/html;charset = utf-8");这里的text/html就是我们今天要讲的MIME类型

首先我们来了解一下MIME类型

  1. 定义:在互联网通信过程中定义的一种文件数据类型,是互联网通信过程中的一种文件类型的,http协议也遵循这种标准标准
  2. 格式:大类型/小类型
    * 例如:text/html:text是指纯文本的,html表示里面定义的是html形式的。
    image/jpeg:image表示是图片类型的,jpeg表示里面放的是JPEG格式的
  3. 获取MIME类型的作用
    在http协议响应头中有一个ContentType,它需要设置MIME类型,告知浏览器发送的响应消息体是什么类型或格式,让浏览器用相应的解析引擎去解析数据。
  4. 获取MIME类型的方法
    * String getMimeType(String file)
    * 该方法接受一个String类型的文件名称,返回一个String类型,
    * 方法通过扩展名(后缀名)来获取
  5. 获取MIME类型的方法代码实现
  • 该方法是在servletContext对象中拿到的,所以先获取servletContext对象。
  • 此次实现是自己写的filename,在项目中我们要动态获取文件名。
public class ServletContextDemo extends HttpServlet{

	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		//1.获取servletContext对象
		ServletContext servletContext = this.getServletContext();
		//2.定义文件名称
		String filename = "a.jpg";
		String filename1 = "a.html";
		//获取MIME类型
		String mimeType = servletContext.getMimeType(filename);
		String mimeType1 = servletContext.getMimeType(filename1);
		//打印MIME类型
		System.out.println(mimeType);
		System.out.println(mimeType1);
	}
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doGet(req, resp);
	}
}

结果展示
两分钟带你了解java中的MIME类型_第1张图片

整个MIME类型所有的对应关系都在我们的服务器里边存储着,该对象刚好和服务器通信,所以getMimeType可以获取到MIME类型
MIME类型就是在我们的Tomcat配置文件中
apache-tomcat-9.0.39——>conf——>web.xml
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这个web.xml是所有项目里面的web.xml的父类,项目中的web.xml都继承了这个web.xml
例如
这个
< extension >html:这个表示后缀名是html
< mime-type>text/html< /mime-type>:是这种的MIME类型
在这里插入图片描述

你可能感兴趣的:(MIME类型,servlet,servlet)