Servlet学习说明
Posted claduxyz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Servlet学习说明相关的知识,希望对你有一定的参考价值。
一、配置
1.基于web.xml的方式
<servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.claudxyz.servlet.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>MyServlet</servlet-name> <url-pattern>/myServlet</url-pattern> </servlet-mapping>
2.基于注解
@WebServlet("/demo") public class MyServlet implements Servlet { }
二、加载顺序
1.构造方法,web容器通过反射调用无参的构造方法创建对象
2.init(),类似于单例模式,只创建一次
3.service(),请求几次,访问几次
4.destroy(),web容器关闭调用
三、servletConfig
1.getInitParameter() 获取web.xml servlet下的init_param
<servlet> <servlet-name>MyServlet</servlet-name> <servlet-class>com.claudxyz.servlet.MyServlet</servlet-class> <init-param> <param-name>name</param-name> <param-value>admin</param-value> </init-param> <init-param> <param-name>password</param-name> <param-value>root123</param-value> </init-param> </servlet>
2.getInitParameterNames() 获取参数名称
3.getServletName() 获取servlet全类名
4.getServletContext() 获取servlet上下文对象ServletContext对象。对象包括整个web服务器的信息。
5.ServletConfig和ServletContext区别:ServletConfig作用于单个serlvet,其中包括getInitParameter()取的是serlvet下的init-param,而ServletContext的getInitParameter()取的是全局的context-param的值
<context-param> <param-name>username</param-name> <param-value>bigadmin</param-value> </context-param>
四、servlet层次
Servlet --> GenericServlet --> HttpServlet
Servlet存在冗余的方法,GenericServlet实现了Serlvet并抽象了service方法,去除了用户不关心的方法。
HttpServlet extends GenericServlet,通过向下转型,使ServletRequest转换成HttpServletRequest,ServletReponse转换成HttpServletReponse,为的就是使用HttpServletRequest的getMethod方法,为的就是判断前台请求是GET、POST or 其他的类型。
后期使用servlet直接继承HttpServlet即可。
以上是关于Servlet学习说明的主要内容,如果未能解决你的问题,请参考以下文章
markdown 打字稿...编码说明,提示,作弊,指南,代码片段和教程文章