Jsp-java servers page – java服务器页面
Servlet-server applet –服务端小应用程序
Servlet是一个特殊的Java类,这个类必须继承HttpServlet类
Servlet类有doGet()和doPost()方法来响应客户端请求,还有init()和destroy()方法。
Servlet源文件必须编译为class文件并放在WEB-INF/class路径下(或具体包名下),为了让Servlet能响应用户请求,还需要在web.xml文件中配置Servlet
通过web.xml配置Servlet需要配置以下两个部分:
1. 配置Servlet的名字:对应web.xml中的<servlet/>元素
2. 配置Servlet的URL:对应web.xml中的<servlet-mapping/>元素
Ps:配置的具体含义为将匹配servlet-mapping元素中url的所有用户请求转交给servlet中配置的Servlet去处理,实现url路由
Servlet/JSP生命周期
1. 创建Servlet有两种类型
a) 客户端第一次请求某个Servlet时,web容器调用Servlet的init()方法实例化该Servlet(大部分)
b) Web应用启动时立即实例化的Servlet(如spring的核心DispatcherServlet)
2. 立即启动的servlet通过在web.xml中<servlet/>元素的<load-on-startup/>子元素进行配置
a) Load-on-startup元素只接受一个整型值,整型值越小,Servlet就越优先实例化
3. 访问Servlet的配置参数
a) 通过在web.xml文件中的<servlet/>元素中添加<init-param…/>子元素来指定
b) Servlet的配置参数通过ServletConfig对象完成,ServletConfig提供如下方法
i. String getInitParameter(String): 获取初始化参数
c) ServletConfig获取的是当前Servlet的配置参数,ServletContext获取的是整个web应用的配置参数
4. 根据严格的MVC规范,视图文件不应该被客户端直接访问,必须经过控制层作为中转将用户请求forward到指定视图文件并返回给客户端