目录
超详细 Tomcat 介绍
什么是 Tomcat
学过 Java
的同学对 Tomcat
应该都比较熟悉,知道 Tomcat
是一个 Servlet
容器,也是一个 Web
服务器,
我们平常编写的 Java Web
项目就可以在 Tomcat
上运行。
这里可以分为两点进行理解:
Tomcat 是一个 Servlet 容器
什么是 Servlet
容器应该很好理解,能运行 Servlet
程序的环境就是 Servlet
容器,常用的 Servlet
容器有 Tomcat
、jetty 等。
那么 Servlet
又是什么呢?Servlet
是 Java EE
提供的一组 API
,我们可以使用Servlet API
来编写自己的 Java Web
程序。
平常我们编写 Servlet
程序的时候都是先继承 HttpServlet
接口,然后会在继承的方法(doGet()
, doPost()
…)中编写我们的代码。
public class MyServlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
//设置响应的编码格式为UTF-8编码,否则发生中文乱码现象
res.setContentType("text/html;charset=UTF-8");
// 获得请求方式
String method = req.getMethod();
}
}
我们编写 Servlet
程序的时候并没有实现任何对象,学过 Java
的都知道在调用对象方法的时候必须先创建对象才能调用,否则运行程序的时候会报异常。
而我们在 Servlet
的程序中却能够直接使用 HttpServletRequest
和 HttpServletResponse
这两个对象,是怎么回事呢?
答案是,这些接口的对象都是 Servlet
容器创建的。当我们的 Servlet
代码运行在 Servlet
容器的时候,由 Se