本帖最后由 帅气de路人甲 于 2018-3-20 15:11 编辑
【001】什么是Servlet?
答:
Servlet是sun公司提供的一门开发动态web资源的技术
Servlet默认情况下为单例模式
【002】编写Servlet时,是否需要覆写service方法?
答:
不需要
因为HttpServlet在实现Servlet接口时,覆写了service方法,该方法体内的代码会自动判断用户的请求方式;如get请求则调用HttpServlet的doGet方法、如为post请求,则调用doPost方法。因此开发人员在编写Servlet时,通常只需覆写doGet或doPost方法,而不覆写service方法
【003】什么是ServletConfig?作用是什么?其常用方法有哪些?
答:
ServletConfig对象用于获取配置参数
获取参数的方法:
getInitParameterNames( ) :获取所有的初始化参数名字
getInitParameter( ) :获取指定名字的初始化参数
注意:
配置初始化参数的时候,init-param节点一定要位于servlet-name与servlet-class的后面
【004】Servlet的生命周期如何?
答:
Servlet的生命周期分为3个阶段:
① 初始化阶段 调用init( ) 方法
② 响应客户请求阶段 调用service( ) 方法
③ 销毁阶段 调用destroy( ) 方法
【注意】init 方法只有第一次访问的时候调用,接下来的访问都不会调用init 方法(Servlet默认情况下是单例设计模式)
【005】写出Servlet映射路径中通配符的用法?
答:
Servlet的映射路径使用通配符的用法只有两种形式:
① 映射路径以 " / " 开头,则通配符只能用户结尾。如:/aa/bb/*
② 映射路径匹配的是后缀名,则必须以 " * " 开头。如:*.do
注意:
- 如果 " * " 在url路径中间,则 " * " 只是一个普通字符而已,不再是通配符
- " / "开头的路径优先级高于" * "开头的路径
- 项目中不能使用缺省路径,否则整个项目的所有静态资源将无法再访问(缺省路径指 /*、/)
【006】什么是ServletContext对象,作用是什么?其常用方法有哪些?
答:
ServletContext代表当前工程;当项目部署到服务器就会马上创建该对象,而且唯一
ServletContext的作用:
① 获取当前的项目名
② 获取全局的配置参数
③ 是一个域对象 // setAttribute、getAttribute、removeAttribute
④ 可以在当前工程下搜索资源文件
getRealPath( ) :该方法必须以 " / " 开头, " / " 代表当前工程
geetResourceAsStream("/.../...") :指定资源文件名获取资源文件的输入对象
获取参数的方法:
getInitParameterNames( ) :获取所有的初始化参数名字
getInitParameter( ) :获取指定名字的初始化参数
【007】ServletConfig对象与ServletContext对象获取的参数有什么区别?
答:
使用ServletConfig对象获取的参数必须是属于某一个Servlet对象的,而ServletContext对象获取的配置参数是可以给所有的Servlet对象使用的
|
|