A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 帅气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对象使用的

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马