JavaEE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,JavaEE包含了13种核心技术规范,这里要讲的是Servlet规范。
规范是什么?
对规范可以理解为一对对的接口及其功能的描述,具体的实现则不进行限制。这就比如要求你从北京到上海,具体你是坐火车还是飞机则没有进行要求。
Servlet是什么?
一个继承了特性接口的Java类。当服务器启动时,通过多态,服务器根据访问路径可以知道应该调用哪个子类。你通过服务器传入的入参,返回相应的返回值给服务器,并且你可以不关系服务器的是怎么做的。
参数流
服务器init阶段:选择启动服务器选项后,会解析web.xml文件,保存context参数,然后把Servlet与其对应的路径放入到一个map中并保存该Servlet的config参数。
init:
服务器start阶段,为配置了startup-on-load的Servlet准备传入ServletConfig对象,这个对象包含了该Servlet的config参数,准备完后就会调用该Servlet的init方法进行初始化。如果Servlet没有配置startup-on-load属性,那就会等到被服务器调用时才进行init方法的调用。
service:
当客户端向服务器发出请求,服务器就会准备ServletRequest对象和ServletResponse对象,然后调用service方法对该请求进行处理。其中,ServletRequest是封装了请求信息,而通过ServletResponse封装响应信息。
destory:
服务器进行关闭,或则卸载其中的一个应用时,Servlet的destory方法就会被调用。