关于Servlet的几个小问题

来源:互联网 发布:画logo的软件 编辑:程序博客网 时间:2024/05/22 14:38

1.如何配置Servlet?

答:

需要在相对应的web.xml文件中指明Servlet和Servlet类的对应关系,

以及指明Servlet的URL访问方式。。(就是web.xml中需要写的

<servlet>    <servlet-name>Servlet</servlet-name>        <servlet-class>Servlet</servlet-class></servlet>    <servlet-mapping>        <servlet-name>Servlet</servlet-name>        <url-pattern>/Servlet</url-pattern>    </servlet-mapping>
)

答:

(1).创建继承HttpServlet抽象类的子类。

(2).根据请求的类型覆盖HttpServlet的方法,如doGet()或者doPost()方法

(3).使用HttpServletRequest对象来获取请求信息

(4).使用HttpServletResponse对象来生成响应


2.简述Servlet的生命周期,第一次请求servlet和第2次请求Servlet有什么区别?

1.初始化阶段

{

(1)加载。。。

在每次调用之前,先查找web.xml文件生成.class文件,并将其加载到内存之中。

(2)实例化

Servlet容器根据加载的.class文件实例化该类的一个或多个实例

(3)初始化

第一次请求时调用init()方法完成初始化。

{初始化后的Servlet进入等待请求的状态};

}

2.运行阶段

初始化后(第N>=2次)的处理请求会直接调用service()方法调用实例

3.销毁阶段

当Servlet容器不在需要Servlet实例或者需要重新加载时,会调用destroy()方法销毁Servlet。


所以综上可知:

第一次会调用init方法初始化Servlet,

第一次以后都会直接调用service()方法(未destroy)


3.Servlet数据处理一般包括那几个方面?

答:

Servlet处理数据包括处理表单和查询字符串数据,HTTP请求报头处理和HTTP响应。


4.如何创建Servlet?Servlet一般需要满足什么条件?

答:

(1).创建继承HttpServlet抽象类的子类。

public class Servlet extends HttpServlet {


(2).根据请求的类型覆盖HttpServlet的方法,如doGet()或者doPost()方法

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

(3).使用HttpServletRequest对象来获取请求信息

(4).使用HttpServletResponse对象来生成响应


5.重定向和请求转发有什么区别?分别如何实现?

请求转发地址栏不变,仍在同一个请求对象中

重定向会跳转地址。

请求转发只能将请求转发给同一个Web应用中的组件,

重定向可以重定向到同一个站点的其他应用程序中的资源。

请求转发时相对的URL地址以“/”开头,是想相对于当前Web应用程序的根目录,

而重定向中的URL地址以“/”开头,       是相对于整个Web站点的根目录。

请求转发前后共享request对象和response对象,属于同一个独立请求和响应的过程;

重定向前后具有独立的request对象和response对象,属于两个独立的请求和响应的过程


注:有些情况下,必须使用重定向,如:需要访问其他服务器上的资源时。


原创粉丝点击