servlet是什么
好像在使用了SpringBoot后,或者说Spring后,程序员好像越来越难接触到servlet这个东西了,很多人以为隐藏在重重框架后的servlet是个超级复杂的洪水猛兽,但是并不是这样的。事实上,servlet就是一个Java接口,interface! 打开idea,ctrl + shift + n,搜索servlet,就可以看到是一个只有5个方法的interface!
public interface Servlet { |
所谓接口,无非是为了规范。那么对于那些实现了servlet接口的类来说呢?他们就可以处理网络请求的吗?当然是不可以的!servlet并不与客户端直接打交道,真正和客户端打交道的东西是tomcat容器,tomcat监听了端口,每过来一个http请求,tomcat根据http请求的url,将请求转发到tomcat中的对应的servlet容器中,然后servlet处理业务逻辑后返回一个response对象,tomcat再将这个response返回给客户端。