java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

1 什么是ServletConfig

           ServletConfig表示的是Servlet的配置信息。

           ServletConfig是servlet配置文件在内存中的表现。

           ServletConfig对象和servlet配置信息(<servlet></servlet>)一一对应。

          当服务器(tomcat)实例化Servlet时,会根据servlet配置信息创建ServletConfig对象。

 

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

 

2  ServletConfig方法

方法返回值类型

方法名

方法解释

java.lang.String

getInitParameter(java.lang.String name)

返回一个包含给定名字的初始化参数,若此参数不存在就返回一个空值。

java.util.Enumeration

getInitParameterNames()

返回context的初始化参数的名字 ,用一个字符串对象枚举变量的形式。如果相应的context没有初始化参数,则就返回一个空的枚举变量。

java.lang.String

getServletName()

返回该servlet实例的名称。

 

 需求:编写一个PoemServlet程序,

            要求向client浏览器打印一首《登鹳雀楼》,

         注意解决中文乱码问题。

 在web.xml文件中添加init-param标签,配置字符编码作为初始化参数:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

 

3   ServletContext是什么

                   ServletContext表示一个WEB应用。

                  ServletContext是web.xml文件在内存中的表示。

                  ServletContext和web.xml一一对应

4  ServletContext方法

需求:编写一个PoemServlet程序,

            要求向client浏览器打印一首《登鹳雀楼》,

              注意解决中文乱码问题。

 在web.xml文件中配置全局初始化参数:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

在servlet中通过ServletContext对象获取全局初始化参数:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

  ServletContext可以向map集合一样,以键值对的形式存储数据。

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

 

 

ServletContext有效范围

ServletContext有效范围是从服务器启动到服务器停止之前,servletContext都有效。

 

6 Cookie

 Cookie是服务器向浏览器写入的一段字符串,这段字符串由键值对组成:”uname=zhang3”

Cookie是保存在浏览器上的。

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

获取cookie:java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

 

HttpSession

           HttpSession表示浏览器与服务器之间的会话(对象)。

           HttpSession是保存在服务器。

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

Session有效期

       Session默认是30分钟内有效,但是可以在web.xml文件中进行配置有效期:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

调用方法来设置session的有效期:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

  让当前session失效的方法:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

Session失效之后,再获取session中的数据,会出现如下异常:

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

 

8 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器

java三十五天---ServletConfig,ServletContext,cookie,Session, 过滤器